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<script language="javascript" type="text/javascript">
function Comprobacion(){
// Declaro las variables a usar
var CampoUsuario = document.getElementById('Usuario').value;
var CampoPassword = document.getElementById('Pass').value;
var Control = true;
// Limpio los mensajes por si acaso ya estaban llenos
document.getElementById("AviUsuario").style.display = "none"
document.getElementById("AviUsuario").innerHTML = null;
document.getElementById("AviContrasena").style.display = "none"
document.getElementById("AviContrasena").innerHTML = null;
// Hago las comprobaciones
if (CampoUsuario == "") {
Control = false;
document.getElementById("AviUsuario").style.display = "block"
document.getElementById("AviUsuario").innerHTML = "El nombre de usuario esta vacio";
}
if (CampoPassword == "") {
Control = false;
document.getElementById("AviContrasena").style.display = "block"
document.getElementById("AviContrasena").innerHTML = "La contraeña esta vacia";
}
// Devuelvo el resultado
if (Control){
return true;
} else {
alert('Se an encontrado errores');
return false;
}
}
</script>
- La parte del formulario
Código HTML:
Ver original<form name="Logeo" id="Logeo" method="post" onSubmit="return Comprobacion();" action="javascript: location.href='http://www.forosdelweb.com'" > Usuario:
<input type="Text" id="Usuario" name="Usuario" value="" /><div id="AviUsuario" style="display: none;"></div><br/>Contraseña:
<input type="password" id="Pass" name="Pass" value="" /><div id="AviContrasena" style="display: none;"></div><br/><input type="submit" name="BotEnviar" value="Logear"/>
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