Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/12/2012, 06:31
Avatar de bookmaster
bookmaster
 
Fecha de Ingreso: febrero-2002
Ubicación: Toledo
Mensajes: 976
Antigüedad: 22 años, 9 meses
Puntos: 67
Respuesta: formulario de inicio de sesion

Esto es una pequeña sugerencia, en vista de que quieres controlarlo "rapido", simplemente sabiendo si esta vacio o no alguno de los datos.

- Crea una funcion en JavaScript que te tome los datos y compruebe si estan vacios o no, devolviendo true en caso de estar todo bien y false y un alert() avisando.
- Despues en la parte del envio del Form antes de meter el action haces la llamada a esa funcion que creaste. Asi cuando detecte que es True se enviara y si es false, te dejara en ese mismo sitio.

También puedes en el mismo Script controlar el campo que esta vacio poniendo un <div id="Usuario" style="display: none"></div> debajo del campo usuario, lo mismo con la contraseña. Y en el script le pones el Style visible y un InnerHTML con el texto que quieras y listo.

A ver si te puedo preparar un ejemplo de lo que te digo.

Una recomendación procura usar isset en vez de $user==NULL ya que algunos servidores te pueden tirar error al hacer una comprobación de una variable sin "rellenar". Esto te lo pondre en el ejemplo también.

Código de ejemplo:
- Funcion que controlara los campos.....
Código Javascript:
Ver original
  1. <script language="javascript" type="text/javascript">
  2. function Comprobacion(){
  3.     // Declaro las variables a usar
  4.     var CampoUsuario = document.getElementById('Usuario').value;
  5.     var CampoPassword = document.getElementById('Pass').value;
  6.     var Control = true;
  7.    
  8.     // Limpio los mensajes por si acaso ya estaban llenos
  9.     document.getElementById("AviUsuario").style.display = "none"
  10.     document.getElementById("AviUsuario").innerHTML = null;
  11.     document.getElementById("AviContrasena").style.display = "none"
  12.     document.getElementById("AviContrasena").innerHTML = null;
  13.    
  14.     // Hago las comprobaciones
  15.     if (CampoUsuario == "") {
  16.         Control = false;
  17.         document.getElementById("AviUsuario").style.display = "block"
  18.         document.getElementById("AviUsuario").innerHTML = "El nombre de usuario esta vacio";
  19.     }
  20.     if (CampoPassword == "") {
  21.         Control = false;
  22.         document.getElementById("AviContrasena").style.display = "block"
  23.         document.getElementById("AviContrasena").innerHTML = "La contraeña esta vacia";
  24.     }
  25.     // Devuelvo el resultado
  26.     if (Control){
  27.         return true;
  28.     } else {
  29.         alert('Se an encontrado errores');
  30.         return false;
  31.     }
  32.  
  33. }
  34. </script>

- La parte del formulario
Código HTML:
Ver original
  1. <form name="Logeo" id="Logeo" method="post" onSubmit="return Comprobacion();" action="javascript: location.href='http://www.forosdelweb.com'" >
  2. Usuario: <input type="Text" id="Usuario" name="Usuario" value="" /><div id="AviUsuario" style="display: none;"></div><br/>
  3. Contraseña: <input type="password" id="Pass" name="Pass" value="" /><div id="AviContrasena" style="display: none;"></div><br/>
  4. <input type="submit" name="BotEnviar" value="Logear"/>
  5. </form>
En el action le metes la página que tu quieras.

OJO: en el onSubmit no te olvides de poner el return delante del nombre de la funcion, ya que sin eso te mandara el formulario, independientemente de lo que realices en la funcion.

Este es el ejemplo funcionando: Ejemplo
__________________
Decir si te a funcionado la respuesta es ¡GRATIS!. Por favor indicarlo.
http://www.lohacemosweb.net
http://tutoriales.lohacemosweb.net

Última edición por bookmaster; 25/12/2012 a las 07:33 Razón: Adjuntar código de ejemplo