Foros del Web » Programando para Internet » PHP »

Imprimir el nombre de un usuario al iniciar sesion.

Estas en el tema de Imprimir el nombre de un usuario al iniciar sesion. en el foro de PHP en Foros del Web. Hola! El problema que tengo es que con el siguiente codigo en principio si me da el nombre pero lo he pusto en otra pagina ...
  #1 (permalink)  
Antiguo 14/02/2008, 10:49
Avatar de esnalca  
Fecha de Ingreso: enero-2008
Mensajes: 77
Antigüedad: 16 años, 3 meses
Puntos: 0
Imprimir el nombre de un usuario al iniciar sesion.

Hola!


El problema que tengo es que con el siguiente codigo en principio si me da el nombre pero lo he pusto en otra pagina y me da un numero, y esque soy bastante novato.

Código PHP:
//conecto base de datos
$conemysql_connect("host","user","pass");
//seleccion BBDD
mysql_select_db("BBDD",$cone);
//Sentencia SQL
$sent"SELECT nombre FROM usuario WHERE email='$email' and password='$password'";
//Ejecutar la sentencia
$ejecmysql_query($sent,$cone);
//Cojo el primero que encuente la sentencia
$datos mysql_result($rs,0);
//lo guardo en una variable
$_SESSION["nombre"]= $datos;
//imprimir
echo $_SESSION["nombre"]; 
Este codigo logeando con el usuario que me logee me devuelve un 1 y no el nombre de este usuario.


Gracias
  #2 (permalink)  
Antiguo 14/02/2008, 10:54
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Re: Imprimir el nombre de un usuario al iniciar sesion.

para poder utilizar el arreglo $_SESSION primero debes poner la directiva session_start();

preferentemente va al principio del codigo, ya q debe estar antes de cualquier salida por pantalla

saludos
__________________
Degiovanni Emilio
developtus.com
  #3 (permalink)  
Antiguo 14/02/2008, 10:54
 
Fecha de Ingreso: mayo-2006
Ubicación: Madrid
Mensajes: 153
Antigüedad: 18 años
Puntos: 3
Re: Imprimir el nombre de un usuario al iniciar sesion.

En:
Código PHP:
$datos mysql_result($rs,0); 
¿No debería ser?:
Código PHP:
$datos mysql_result($ejec,0); 


Saludos!!
  #4 (permalink)  
Antiguo 14/02/2008, 10:57
Avatar de esnalca  
Fecha de Ingreso: enero-2008
Mensajes: 77
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Imprimir el nombre de un usuario al iniciar sesion.

el
Código PHP:
session_start(); 
ya lo tengo puesto arriba

en cuanto a lo de poner
Código PHP:
$datos mysql_result($ejec,0); 
me devuelve el sigiente error:

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 4 in C:\AppServ\www\php\registroweb.php on line 54
  #5 (permalink)  
Antiguo 14/02/2008, 11:01
 
Fecha de Ingreso: mayo-2006
Ubicación: Madrid
Mensajes: 153
Antigüedad: 18 años
Puntos: 3
Re: Imprimir el nombre de un usuario al iniciar sesion.

Prueba con esto:
Código PHP:
//conecto base de datos
$conemysql_connect("host","user","pass");
//seleccion BBDD
mysql_select_db("BBDD",$cone);
//Sentencia SQL
$sent"SELECT nombre FROM usuario WHERE email='$email' and password='$password'";
//Ejecutar la sentencia
$ejecmysql_query($sent,$cone);
//Cojo el primero que encuente la sentencia
$datos mysql_fetch_assoc($ejec);
//lo guardo en una variable
$_SESSION["nombre"]= $datos["nombre"];
//imprimir
echo $_SESSION["nombre"]; 
  #6 (permalink)  
Antiguo 14/02/2008, 11:24
Avatar de esnalca  
Fecha de Ingreso: enero-2008
Mensajes: 77
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Imprimir el nombre de un usuario al iniciar sesion.

no me devuelve nada ni ace nada
  #7 (permalink)  
Antiguo 14/02/2008, 11:27
 
Fecha de Ingreso: mayo-2006
Ubicación: Madrid
Mensajes: 153
Antigüedad: 18 años
Puntos: 3
Re: Imprimir el nombre de un usuario al iniciar sesion.

Pues no se... ¿no será que por error el campo 'nombre' guarde el id en lugar del nombre?
  #8 (permalink)  
Antiguo 14/02/2008, 11:30
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
Re: Imprimir el nombre de un usuario al iniciar sesion.

fijate con phpmyadmin que tiene la tabla
__________________
Degiovanni Emilio
developtus.com
  #9 (permalink)  
Antiguo 14/02/2008, 11:44
Avatar de esnalca  
Fecha de Ingreso: enero-2008
Mensajes: 77
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Imprimir el nombre de un usuario al iniciar sesion.

no en la base de datos me guarda bien el nombre y no el id.
He utilizado el mismo codigo para otra pagina y m funciona perfectamente y lo e ido a meter en esta para que me sigiese mostrando el nombre y no funcionaba.
  #10 (permalink)  
Antiguo 14/02/2008, 16:24
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Re: Imprimir el nombre de un usuario al iniciar sesion.

Agrega el mysql_error a ver si el error esta en la consulta.

Código PHP:
//conecto base de datos
$conemysql_connect("host","user","pass");
//seleccion BBDD
mysql_select_db("BBDD",$cone);
//Sentencia SQL
$sent"SELECT nombre FROM usuario WHERE email='$email' and password='$password'";
//Ejecutar la sentencia
$ejecmysql_query($sent,$cone) or die( mysql_error() );
//Cojo el primero que encuente la sentencia
$datos mysql_result($ejec,0);
//lo guardo en una variable
$_SESSION["nombre"]= $datos;
//imprimir
echo $_SESSION["nombre"]; 
Saludos.
  #11 (permalink)  
Antiguo 15/02/2008, 02:02
Avatar de esnalca  
Fecha de Ingreso: enero-2008
Mensajes: 77
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: Imprimir el nombre de un usuario al iniciar sesion.

bueno ya lo he consegido con el siguiente codigo. Al final he utilizado un include y he puesto en toas las paginas el session_start(); y l conexion a la base de datos, luego en include este codigo.


Código PHP:
<?
session_start
();

if (!isset(
$_SESSION['nombre'])) {
    
$_SESSION['nombre'] = $_REQUEST['nombre'];


if (
$_SESSION['nombre']===NULL){

}else{
    echo 
"Bienvenido "$_SESSION["nombre"];}
?>

Muchas gracias a todos.
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 09:20.