Programación Web y Scripting > PHP
Verificar Usuario Y Contraseña
(1/1)
irenemiracle:
Hola a todos,
a ver os comento mi problema, yo tengo un formulario de registro muy sencillo, en el que solo hay que ingresar el nombre, y la contraseña,este es el código:
--- Código: Text ---<form name="formulario" method="post" action="buscar.php"> <div align="right"><strong><font size="3" face="Arial, Helvetica, sans-serif">Nombre Usuario:</font></strong></div> <input name="nombre" type="text" id="nombre"> <div align="right"><font size="3" face="Arial, Helvetica, sans-serif"><strong>Contraseña:</strong></font></div> <input name="clave" type="password" id="clave"> <div align="right"> <img src="img/boton.gif" width="80" height="30" onClick="validar()"></div></form>
entonces, cuando lo mando a la página "buscar.php", tengo esto:
--- Código: Text --- <?phpob_start();session_start(); //recojo el valor del formulario mediante $_POST$nombre = $_POST['nombre'];$clave = $_POST['clave'];$i=0; //conexion con mysql$dp_di="localhost";$db_usuario="root";$db_clave="";$conectar=mysql_connect ($dp_di,$db_usuario,$db_clave);if ($conectar==NULL){ printf ("Error");} //conectamos con la base de datos prueba$db='prueba';mysql_select_db($db, $conectar); //hago la consulta a la tabla usuarios $consulta= "SELECT nombreBD FROM usuarios WHERE nombre='$nombre' and clave=SHA1('$clave')";$resultado=mysql_query($consulta,$conectar); $_SESSION['user']=$nombre; //recojo en una sesion el nombre del usuario$_SESSION['password']=$clave; //recojo en una sesion la contraseña del usuario para identificarse while ($row = mysql_fetch_array($resultado)) { $_SESSION['nombre_bd']=$row[$i]; //recogo en una sesion el nombre de la bd que puede utilizar el usuario $i++; }?>
lo que me gustaria si me pueden ayudar, es que cuando busque en la tabla de mi bd, como puedo hacer para verificar el usuario y la contraseña que sean correctos cuando los ingresen.
Muchisimas gracias :hola:
ArKaNtOs:
de hecho ya lo haces :P
con esta linea
$consulta= "SELECT nombreBD FROM usuarios WHERE nombre='$nombre' and clave=SHA1('$clave')";
$resultado=mysql_query($consulta,$conectar);
si te devuelve valores es porque esta en la bd sino te devuelve es porque no :P
como saber si te devuelve valores?
if (@mysql_num_rows($resultado==0){
echo "No existe el usuario";
}
else{
echo "Bienvenido";
}
LeGatoRojo:
Tal vez ayudaria mucho poner esto
--- Código: Text --- extract($_POST); oextract($_GET);
nada mas para asegurarte de que la variable llegan, fuera de eso todo esta bién, ahhh y agrega lo que escribio ArKaNtOs
F_Tanori:
--- Cita de: "ArKaNtOs" ---<!--xc1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>XCODE </td></tr><tr><td id='XCODE'><!--exc1-->if (@mysql_num_rows($resultado==0){
echo "No existe el usuario";
}
else{
echo "Bienvenido";<!--xc2--></td></tr></table><div class='postcolor'><!--exc2-->
}
--- Fin de la cita ---
con un pequeño cambio :P
--- Código: Text ---if (@mysql_num_rows($resultado)==0){
irenemiracle:
Muchas gracias chicos, me ayudaron mucho, al final lo hice asi:
--- Código: Text --- $consulta= "SELECT nombreBD FROM usuarios WHERE nombre='$nombre' and clave=SHA1('$clave')";$resultado=mysql_query($consulta,$conectar); if (mysql_num_rows($resultado)!=0) { while ($row = mysql_fetch_array($resultado)) { $_SESSION['nombre_bd']=$row[$i]; $i++; } }else { //echo "El usuario no existe"; header("Location:index.htm"); }
Navegación
Ir a la versión completa