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(&#036;resultado)==0){ 

irenemiracle:
Muchas gracias chicos, me ayudaron mucho, al final lo hice asi:


--- Código: Text --- &#036;consulta= &#34;SELECT nombreBD FROM usuarios WHERE nombre='&#036;nombre' and clave=SHA1('&#036;clave')&#34;;&#036;resultado=mysql_query(&#036;consulta,&#036;conectar); if (mysql_num_rows(&#036;resultado)!=0) {      while (&#036;row = mysql_fetch_array(&#036;resultado))         {                 &#036;_SESSION['nombre_bd']=&#036;row[&#036;i];                &#036;i++;         } }else {         //echo &#34;El usuario no existe&#34;;        header(&#34;Location:index.htm&#34;); }  

Navegación

[0] Índice de Mensajes

Ir a la versión completa