Foros del Web » Programando para Internet » PHP »

Verificar usuario y contraseña

Estas en el tema de Verificar usuario y contraseña en el foro de PHP en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 29/06/2007, 04:19
irene_osiris
Invitado
 
Mensajes: n/a
Puntos:
Verificar usuario y contraseña

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 HTML:
<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&ntilde;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 PHP:
<?php
ob_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
  #2 (permalink)  
Antiguo 29/06/2007, 04:55
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Verificar usuario y contraseña

Veo que la consulta ya la tienes hecha. Sólo te haría falta comprobar el número de filas que te devuelve la consulta. Si es igual a 1 (o superior) es que existe (al menos) una coincidencia en la base de datos y puedes deducir que existe ese usuario. Para hacer eso necesitas utilizar la función mysql_num_rows.

Un saludo
  #3 (permalink)  
Antiguo 29/06/2007, 23:52
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 20 años, 11 meses
Puntos: 60
Re: Verificar usuario y contraseña



Código PHP:
<?php
ob_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);
//checas si devuelve un resultado la consulta
if(mysql_num_rows($resultado)!=0)
{
$_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++;
    }
}else
{
//si llegas aqui es por que no se encontro el usuario o no coincidio con el password..
//hacemos lo que quieras..
echo "El usuario no existe";
}
?>
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #4 (permalink)  
Antiguo 02/07/2007, 02:07
irene_osiris
Invitado
 
Mensajes: n/a
Puntos:
Re: Verificar usuario y contraseña

Muchisimas gracias, me funciona perfectamente.
Gracias de nuevo.
  #5 (permalink)  
Antiguo 02/07/2007, 03:05
 
Fecha de Ingreso: abril-2005
Mensajes: 36
Antigüedad: 19 años
Puntos: 0
Re: Verificar usuario y contraseña

yo tengo una duda paresida

el mio es que me verifique el login tire un mensaje diciendo que el login ya esta cogido sino que continue con la funcion este es mi codigo

Código:
<?php
mysql_connect("127.0.0.1","vcorp","vcorp11");
mysql_select_db("prueba"); 

//recoje el post y lo encripta y lo gurada en passw
$pass = $_POST['password'];
$passw=base64_encode(pack("H*", sha1(utf8_encode($pass))));

//inserta los valores 
mysql_query("INSERT INTO accounts (login, password, email, age, pq) VALUES ('$_POST[login]', '$passw', '$_POST[email]', '$_POST[age]', '$_POST[pq]')"); 
echo 'datos registrados en el base';
?>
que le tengo que anadir para que verifique si ese login exixte y dispare el error ho continua? soy nuevo en esto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:02.