Ver Mensaje Individual
  #3 (permalink)  
Antiguo 16/08/2008, 11:25
haga41
 
Fecha de Ingreso: junio-2008
Mensajes: 145
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Como hacer el cambio de formulario a campo de texto normal al validar.

Hola Adler,

Gracias por responder, lo hice como me dijiste y funciona bien.

El problema lo tengo ahora en otra cosa, seguro que es una tontería pero no lo veo. Cuando pones un nombre de usuario y/o contraseña incorrectos quiero que aparezca la típica frase de: "Nombre de usuario o contraseña incorrectos" justo antes del formulario que te permite ingresar de nuevo tus datos. El problema es que he debido de escribir mal algo.

Este es el código que aparece en la plantilla, el que llama a los subs.
Código HTML:
 <div class="menu4">
     <% if Not IsEmpty(session("usuario")) then
			if (session("usuario") = usu) then
			conectado()
			else if (session("usuario") = fallo) then
			fallo()
			end if
			end if
		else
			formulario()
		end if %>
      
    </div> 
Me da como error, no coinciden los tipos fallo cuando hago la llamad al sub (fallo())
Esa web tiene el include al archivo acceder.asp cuyo contenido son las 3 subs.

Código HTML:
<% sub formulario()%>
<form class="formulario" action="validar.asp" method="post" target="_self">
    Usuario<br/>
      <input name="usuario" type="text" id="usuario" size="13" />
     Contraseña
      <input name="pwd" type="text" id="pwd" size="13" style="margin-bottom:5px;" />
      <input  type="submit"  name="button4" id="button4" value="Acceder" />
      </form>
<%end sub%>

<%sub conectado()
%>
<div class="normal">Bienvenid@ <%=session("usuario")%></div>
<div class="normal2"><a href="includes/desconectar.asp" target="_self">Finalizar sesión</a></div>
<%end sub%>

<%sub fallo()%>
<div class="normal">El nombre de usuario o contraseña son incorrectos</div>
<div class="normal">Por favor, vuelva a intentarlo</a></div>
<form class="formulario" action="validar.asp" method="post" target="_self">
    Usuario<br/>
      <input name="usuario" type="text" id="usuario" size="13" />
     Contraseña
      <input name="pwd" type="text" id="pwd" size="13" style="margin-bottom:5px;" />
      <input  type="submit"  name="button4" id="button4" value="Acceder" />
      </form>

<%end sub%> 
Y el otro archivo que falta es el que comprueba que los datos de entrada son correctos, el validar.asp

Código HTML:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin t&iacute;tulo</title>
<!--#include file="includes/AbrirBD.asp"-->
<!--#include file="includes/acceder.asp"-->

</head>

<%
 	usu = request.Form("usuario")
   pass = request.Form("pwd")
   
   sql = "Select * from USUARIOS where usuario = '"&usu&"'"

'Ejecutar la instruccion contra la base de datos Cole'
tabla.open sql, conexion

if tabla.eof then
	response.Write "No existe ningun usuario con ese nombre"
else
	if tabla.fields("pass") = pass and tabla.fields("usuario") = usu then
		session("usuario")=usu
		response.Redirect("index.asp")
	else
		session("usuario")=fallo
		response.Redirect("index.asp")
	end if
end if
%>


<body>
<a href="index.asp">Volver</a>
</body>

<%tabla.close
conexion.close%>
</html> 
Añado también el archivo desconectar.asp porque supongo que también importará.
Código HTML:
<% 
Session.Contents.Remove("usuario")
response.redirect("../index.asp")
%> 
¿Sabéis cual puede ser el fallo?

Última edición por haga41; 16/08/2008 a las 11:59