Foros del Web » Programando para Internet » PHP »

problema con select en una base de datos

Estas en el tema de problema con select en una base de datos en el foro de PHP en Foros del Web. hola!tengo un problemilla que no llego a solucionar : estoy haciendo una autentificación de usuario /contraseña .la tabla de la base de datos consta de ...
  #1 (permalink)  
Antiguo 31/08/2005, 05:02
 
Fecha de Ingreso: agosto-2005
Mensajes: 1
Antigüedad: 18 años, 7 meses
Puntos: 0
Pregunta problema con select en una base de datos

hola!tengo un problemilla que no llego a solucionar :
estoy haciendo una autentificación de usuario /contraseña .la tabla de la base de datos consta de dos campos email_usuario y contra_usuario.

la sentencia mysql es la siguiente:

$res="SELECT * FROM tabla WHERE email_usuario='".$_POST['usuario']."' and contra_usuario='".$_POST['pw']."'";

y luego:

if (mysql_num_rows($res)!==0){
print "hola";
}else{
print "no";
}

pero no funciona.

pero si la sentencia simplemente es :
$res="SELECT * FROM tabla WHERE email_usuario='".$_POST['usuario']."'";
si que funciona aunque asi solo controlo el usuario pero no la contraseña

pero la misma sentencia pero :
$res="SELECT * FROM tabla WHERE contra_usuario='".$_POST['pw']."'";
esta no funciona
llevo dias buscando una solucion y nada .¿podria ayudarme alguien?
  #2 (permalink)  
Antiguo 31/08/2005, 05:07
Avatar de elangelcaido  
Fecha de Ingreso: septiembre-2003
Ubicación: Oviedo
Mensajes: 1.068
Antigüedad: 20 años, 7 meses
Puntos: 4
Por probar... cambia los = por LIKE
__________________
Ta Luego! Al final sólo puede quedar uno...
________
lukos.org
  #3 (permalink)  
Antiguo 31/08/2005, 05:17
 
Fecha de Ingreso: agosto-2005
Mensajes: 101
Antigüedad: 18 años, 8 meses
Puntos: 0
No se si el codigo lo has cortado y pegado del tuyo o lo has vuelto a escibir pero en el if has puesto (!==0). No creo que ese sea el problema pero puedes probar.
Tambien puedes probar a quitar las comillas simples en el password.
  #4 (permalink)  
Antiguo 31/08/2005, 05:18
 
Fecha de Ingreso: agosto-2005
Mensajes: 101
Antigüedad: 18 años, 8 meses
Puntos: 0
Me refiero a poner
Código PHP:

$res
="SELECT * FROM tabla WHERE email_usuario='".$_POST['usuario']."' and contra_usuario=".$_POST['pw']; 
  #5 (permalink)  
Antiguo 31/08/2005, 11:33
Avatar de rmilano  
Fecha de Ingreso: abril-2002
Ubicación: Mexico DF
Mensajes: 150
Antigüedad: 22 años
Puntos: 0
Buenas,

por que no hacer un codigo mas limpio???

$vusuario=$_POST['usuario'];
$vclave=$_POST['pw'];

$res="SELECT * FROM tabla WHERE email_usuario='$vusuario' and contra_usuario='$vclave'";

if (mysql_num_rows($res)!=0){
print "hola";
}else{
print "no";
}
__________________
Rodolfo Milano Oliveros
www.todohosting.com.mx
Especialista Sistemas de Información
  #6 (permalink)  
Antiguo 01/09/2005, 00:32
 
Fecha de Ingreso: agosto-2005
Mensajes: 101
Antigüedad: 18 años, 8 meses
Puntos: 0
En el codigo que pones no estas ejecutando la query.

Quedaria asi:

Código PHP:
$vusuario=$_POST['usuario'];
$vclave=$_POST['pw'];

$query="SELECT * FROM tabla WHERE email_usuario='$vusuario' and contra_usuario='$vclave'";

$res mysql_query($query);

if (
mysql_num_rows($res)!=0){
print 
"hola";
}else{
print 
"no";

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 05:59.