Foros del Web » Programando para Internet » PHP »

Mostras contenido de variables de $_SESSION

Estas en el tema de Mostras contenido de variables de $_SESSION en el foro de PHP en Foros del Web. No consigo mostrar contenido variable $_SESSION, os cuento envio los datos de un formulario mediante POST, y guardo tres variables de sesion que son las ...
  #1 (permalink)  
Antiguo 18/05/2011, 12:17
 
Fecha de Ingreso: mayo-2011
Mensajes: 64
Antigüedad: 13 años
Puntos: 8
Mostras contenido de variables de $_SESSION

No consigo mostrar contenido variable $_SESSION, os cuento envio los datos de un formulario mediante POST, y guardo tres variables de sesion que son las que me interesan

Archivo donde inserto los datos del formulario, valido los datos en javascript.
registro.php
Código PHP:
<?php

    
@session_start();
    function 
conectar()
    {
        if(!(
$link=mysql_connect("localhost","root")))
        {
            echo 
"Error en la conexion al servidor";
            exit();
        }
        if (!
mysql_select_db("proyecto",$link)) 
           { 
              echo 
"Error seleccionando la base de datos."
              exit(); 
           } 
        return 
$link;
    }
    
    
$link=conectar();
    
    
$nombre=$_POST['nombre'];    
    
$ape1=$_POST['apellido1'];
    
$ape2=$_POST['apellido2'];
    
$fecha=$_POST['fechNac'];
    
$dni=$_POST['dni'];
    
$pais=$_POST['paisNombre'];
    
$provincia=$_POST['provincia'];
    
$poblacion=$_POST['poblacion'];
    
$nickR=$_POST['nick'];
    
$pwdR=$_POST['pass'];
    
$email=$_POST['mail'];
    
//Mirar como se meten las variables en PHP para realizas las comprobaciones de empty e isset!!!
    //La validacion la hago con javascript, mirando que no esten vacios y que el resultado sea correcto
    
[B]$_SESSION['name']=$nombre;
    
$_SESSION['surname']=$ape1;
    
$_SESSION['login']=$nickR;
    [/
B]
    
//Se me ha olvidad0 implementar la caja de direccion!!!!!
    
if (mysql_query("insert into usuarios (nick, passw, dni, nombre, apellido1, apellido2, fechaNac, provincia, poblacion, direccion, pais, email, tipo)
values('$nickR', '$pwdR', '$dni', '$nombre', '$ape1', '$ape2', '$fecha', '$provincia', '$poblacion', 'null', '$pais', '$email', 'Player')"
,$link))
    {
        
        
header("Location:bienvenida.php");
    }
    else
    {
        echo 
"SE HA PRODUCIDO UN ERROR";
    }
Generadas las variables de sesion habiendo insertado antes en la BBDD lo mando a otra pagina, donde solo pretendo mostrar la informacion de las variables de sesion, pero solo me pinta un "0", he probado asignando las variables de sesion a una variable normal ($nomb=$_SESSION['name']) y tampoco..
bienvenida.php
Código PHP:
<?php   
    
@session_start();
    function 
conectar()
    {
        if(!(
$link=mysql_connect("localhost","root")))
        {
            echo 
"Error en la conexion al servidor";
            exit();
        }
        if (!
mysql_select_db("proyecto",$link)) 
           { 
              echo 
"Error seleccionando la base de datos."
              exit(); 
           } 
        return 
$link;
    }
    
    
$link=conectar();
        
        
        echo 
"Bienvenido "+$_SESSION['name']+" "+$_SESSION['surname']+" "+"Tu nick es: "+$_SESSION['login'];
        
        
        
?>
  #2 (permalink)  
Antiguo 18/05/2011, 12:25
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 16 años, 5 meses
Puntos: 75
Respuesta: Mostras contenido de variables de $_SESSION

primero que todo quitale la @ de session_start() que si sale un error pues lo miramos que es, segundo, se te está escapando un [B] en una variable de sesión o eso era una negrilla para este editor?
otra cosa, antes de asignarlas imprime (con echo) las variables que vas a asignar y luego de asignarlas imprime las variables asignadas (las de sesión)
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #3 (permalink)  
Antiguo 18/05/2011, 12:26
Avatar de RollerSky  
Fecha de Ingreso: marzo-2008
Mensajes: 123
Antigüedad: 16 años, 1 mes
Puntos: 8
Respuesta: Mostras contenido de variables de $_SESSION

Hola..
bueno todo se ve bien..


algo curioso revisa la primera linea del archivo donde crear tus sessiones.

Código PHP:
<?php
   
---------------------ESTE ESPACIO --------------
    @
session_start();
    function 
conectar()
    {
        if(!(
$link=mysql_connect("localhost","root")))
        {
            echo 
"Error en la conexion al servidor";
            exit();
        }
        if (!
mysql_select_db("proyecto",$link)) 
           { 
              echo 
"Error seleccionando la base de datos."
              exit(); 
           } 
        return 
$link;
    }
    
    
$link=conectar();
no se si ese espacio te lo creo cuando lo metiste aqui en el foro o está asi en tu Codigo, si es asi elimiinalo, tambien quitale el Arroba "@" a la funcion session_start(), para ver si te está arrojando algun error.

eso del espacio te lo comento porque suele pasar que dejando espacios en blanco o saltos de linea antes de la funcion session_start() causa problemas
__________________
www.sawedsa.com
  #4 (permalink)  
Antiguo 18/05/2011, 12:35
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 16 años, 5 meses
Puntos: 75
Respuesta: Mostras contenido de variables de $_SESSION

en php5 no tiene problema ese espacio, o no sé si sea configuración en el php.ini, puedes asignarlo en cualquier lugar antes de declarar una variable de sesión, pero sí es mejor que lo pogas en la linea inmediatamente más abajo de <?php
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #5 (permalink)  
Antiguo 18/05/2011, 12:35
 
Fecha de Ingreso: mayo-2011
Ubicación: La Luna
Mensajes: 84
Antigüedad: 13 años
Puntos: 6
Respuesta: Mostras contenido de variables de $_SESSION

Esta correcto el nombre de tu input? has probado que capture ? has una prueba solamente con las variables de sesion , pasalas de pagina a ver que pasa
registro.php
Código:
session_start();
$_SESSION["usuario"]=$usuario; //este valor lo recoges del formulario (fijate en el nombre)
bienvenido.php
Código:
session_start();
echo $_SESSION["usuario"];
Ademas como recomendacion si usas mysql_query fijate usar esto
Código:
mysql_query("") or die(mysql_error())
  #6 (permalink)  
Antiguo 18/05/2011, 12:37
 
Fecha de Ingreso: mayo-2011
Mensajes: 64
Antigüedad: 13 años
Puntos: 8
Respuesta: Mostras contenido de variables de $_SESSION

El tema de las "[B]" es del editor. He cambiado algunas cosas para simplificarlo más...

Decir, por si sirve de algo que uso XAMPP.
Pongo el codigo que tengo ahora para probarlo y continua sin mostrarmelo, la insercion me la hace perfecta.

Código PHP:
<?php
    session_start
();
    function 
conectar()
    {
        if(!(
$link=mysql_connect("localhost","root")))
        {
            echo 
"Error en la conexion al servidor";
            exit();
        }
        if (!
mysql_select_db("proyecto",$link)) 
           { 
              echo 
"Error seleccionando la base de datos."
              exit(); 
           } 
        return 
$link;
    }
    
    
$link=conectar();
    
    
$nombre=$_POST['nombre'];    
    
$ape1=$_POST['apellido1'];
    
$ape2=$_POST['apellido2'];
    
$fecha=$_POST['fechNac'];
    
$dni=$_POST['dni'];
    
$pais=$_POST['paisNombre'];
    
$provincia=$_POST['provincia'];
    
$poblacion=$_POST['poblacion'];
    
$nickR=$_POST['nick'];
    
$pwdR=$_POST['pass'];
    
$email=$_POST['mail'];
    
//Mirar como se meten las variables en PHP para realizas las comprobaciones de empty e isset!!!
    //La validacion la hago con javascript, mirando que no esten vacios y que el resultado sea correcto
    
$_SESSION['name']=$nombre;
    
$_SESSION['surname']=$ape1;
    
$_SESSION['login']=$nickR;
    
    
//Se me ha olvidad0 implementar la caja de direccion!!!!!
    
if (mysql_query("insert into usuarios (nick, passw, dni, nombre, apellido1, apellido2, fechaNac, provincia, poblacion, direccion, pais, email, tipo)
values('$nickR', '$pwdR', '$dni', '$nombre', '$ape1', '$ape2', '$fecha', '$provincia', '$poblacion', 'null', '$pais', '$email', 'Player')"
,$link))
    {
        echo 
"Bienvenido "+$_SESSION['name']+" "+$_SESSION['surname']+" "+"Tu nick es: "+$_SESSION['login'];
        
//header("Location:bienvenida.php");
    
}
    else
    {
        echo 
"SE HA PRODUCIDO UN ERROR";
    }
    
    
    
    
    
//mysql_free_result($nombre);
    
mysql_close($link);    
?>
  #7 (permalink)  
Antiguo 18/05/2011, 12:38
 
Fecha de Ingreso: mayo-2011
Ubicación: La Luna
Mensajes: 84
Antigüedad: 13 años
Puntos: 6
Respuesta: Mostras contenido de variables de $_SESSION

fijate lo que te puse arriba
  #8 (permalink)  
Antiguo 18/05/2011, 12:40
 
Fecha de Ingreso: mayo-2011
Mensajes: 64
Antigüedad: 13 años
Puntos: 8
Respuesta: Mostras contenido de variables de $_SESSION

Cita:
Iniciado por pabloaguero2010 Ver Mensaje
Esta correcto el nombre de tu input? has probado que capture ? has una prueba solamente con las variables de sesion , pasalas de pagina a ver que pasa
registro.php

Me inserta los valores en la base de datos por lo que el input esta bien.
  #9 (permalink)  
Antiguo 18/05/2011, 12:42
 
Fecha de Ingreso: mayo-2011
Ubicación: La Luna
Mensajes: 84
Antigüedad: 13 años
Puntos: 6
Respuesta: Mostras contenido de variables de $_SESSION

Cita:
Iniciado por albertomozgz Ver Mensaje
Me inserta los valores en la base de datos por lo que el input esta bien.
y has probado solo con la sessiones puedes comentar el resto y fijarte solo en las sessiones -.-
  #10 (permalink)  
Antiguo 18/05/2011, 12:49
 
Fecha de Ingreso: mayo-2011
Mensajes: 64
Antigüedad: 13 años
Puntos: 8
Respuesta: Mostras contenido de variables de $_SESSION

Cita:
Iniciado por pabloaguero2010 Ver Mensaje
y has probado solo con la sessiones puedes comentar el resto y fijarte solo en las sessiones -.-
Vale no te entendia muy bien lo que querias decir, tenias razon, entra en conflicto, porque he llamado a la variable con el mismo nombre de input
Código PHP:
$nombre=$_POST['nombre']; 
, asique lo he modificado y ya me muestras todas en las otras paginas, muchas gracias a todos!!!

  #11 (permalink)  
Antiguo 18/05/2011, 12:51
 
Fecha de Ingreso: mayo-2011
Ubicación: La Luna
Mensajes: 84
Antigüedad: 13 años
Puntos: 6
Respuesta: Mostras contenido de variables de $_SESSION

ves tio divide las cosas en pequeño y deja de liarte con todo el codigo , asi de a pocos sale te lo digo por experiencia -,-

Saludos
  #12 (permalink)  
Antiguo 19/05/2011, 01:29
 
Fecha de Ingreso: abril-2011
Ubicación: España
Mensajes: 17
Antigüedad: 13 años
Puntos: 2
Respuesta: Mostras contenido de variables de $_SESSION

Código PHP:
<?php   
    
@session_start();
    function 
conectar()
    {
        if(!(
$link=mysql_connect("localhost","root")))
        {
            echo 
"Error en la conexion al servidor";
            exit();
        }
        if (!
mysql_select_db("proyecto",$link)) 
           { 
              echo 
"Error seleccionando la base de datos."
              exit(); 
           } 
        return 
$link;
    }
    
    
$link=conectar();
        
        
        echo 
"Bienvenido "+$_SESSION['name']+" "+$_SESSION['surname']+" "+"Tu nick es: "+$_SESSION['login'];
        
        
        
?>
[/QUOTE]

Hola, una pregunta. En el último echo, debajo de todo, pones "Bienvenido"+$_SESSION['name']....
Estás intentando concatenar eso? No controlo mucho, pero creo que para concatenar se usa el punto, y no el signo de suma.

Etiquetas: contenido, session, variables
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 06:49.