Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/10/2008, 22:14
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: mostrar datos de usuario

Se supone que tu consulta devolverá sólo una fiula no? (un solo usuario). La función mysql_fetch_array() (Lee el manual por favor: http://www.php.net/mysql_fetch_array) devuelve una a una las filas del resultado, y cuando se acaban empieza a devolver un valor booleano false. En tu código llamas 3 veces a esa función, y sólo en la primera llamada (la que usas para ver si hay registros) realmente se devuelven los resultados. En las otras no.

Para ver l cantidad de filas devueltas por tu consulta usa la función mysql_num_rows(). Luego asigna a una variable $datos el resultado de la función mysql_fetch_array(). Esta variable se convierte en un array con los datos de la fila devuelta (los datos de tu usuario).

Código php:
Ver original
  1. $consulta= "SELECT * FROM principal WHERE rut_proveedor='$nombre' and codigo_bip=SHA1('$clave')";  
  2. $resultado=mysql_query($consulta,$conectar);  
  3.  
  4. //checas si devuelve un resultado la consulta  
  5. if(mysql_num_rows() <> 1) {  
  6.   // Asignas la fila a una variable
  7.   $row = mysql_fetch_array($resultado);
  8.  
  9.   $_SESSION['user'] = $row['nombre']; //recojo en una sesion el nombre del usuario  
  10.   $_SESSION['password'] = $row['clave']; //recojo en una sesion la contraseña del usuario para identificarse  
  11.  
  12.  
  13.    //y todos los demas campos que deseas mostrar.
  14. }
Saludos,