Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] No puedo pasar objetos por $_SESSION

Estas en el tema de No puedo pasar objetos por $_SESSION en el foro de PHP en Foros del Web. Hola, estuve viendo que pasar objetos por sesión es tan siemple como guardarlo en la variable $_SESSION y que la clase este definida en las ...
  #1 (permalink)  
Antiguo 15/01/2014, 07:03
 
Fecha de Ingreso: junio-2013
Mensajes: 8
Antigüedad: 11 años, 4 meses
Puntos: 0
Pregunta No puedo pasar objetos por $_SESSION

Hola, estuve viendo que pasar objetos por sesión es tan siemple como guardarlo en la variable $_SESSION y que la clase este definida en las paginas que se utilice el mismo.
El problema que yo tengo es que cuando paso el objeto y lo utilizo con un simple echo el script no funciona a partir de esa linea. Un ejemplo:

clase.php:


Código PHP:
<?php

class ShowOne{
    private 
$one;
    
    public function 
sOne(){
        
//devuelve uno
        
$this->one 'uno';
        return 
$this->one;
    }

}

?>
session.php:

Código PHP:
<?php
session_start
();
include_once(
'clase.php');
$_SESSION['obj'] = new ShowOne;
echo 
'<a href="linck.php">otro lugar</a>';

?>

linck.php

Código PHP:
<?php
session_start
();
include(
'clase.php');
$one $_SESSION['obj'];
echo 
'One vale: '.$one->sOne();
echo 
'<br>Arriba tendria que decir one' 

?>

Muchas gracias!
  #2 (permalink)  
Antiguo 15/01/2014, 07:10
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 9 meses
Puntos: 288
Respuesta: No puedo pasar objetos por $_SESSION

Hola amiguito,
hace

Código PHP:
Ver original
  1. echo '<pre>';
  2. var_dump($_SESSION);
  3. echo '</pre>';

y vemos que hay dentro
  #3 (permalink)  
Antiguo 15/01/2014, 07:19
 
Fecha de Ingreso: junio-2013
Mensajes: 8
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: No puedo pasar objetos por $_SESSION

Me tiro:

Código:
array(1) {
  ["obj"]=>
  object(__PHP_Incomplete_Class)#1 (2) {
    ["__PHP_Incomplete_Class_Name"]=>
    string(7) "ShowOne"
    ["one":"ShowOne":private]=>
    NULL
  }
}
Por lo que puedo entender dice que hay una variable "obj" que es un objeto de la clase ShowOne despues vienen los atributos no?
  #4 (permalink)  
Antiguo 15/01/2014, 09:00
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 13 años, 2 meses
Puntos: 397
Respuesta: No puedo pasar objetos por $_SESSION

Y si tratas de serializar el objeto en vez de pasarlo entero?

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #5 (permalink)  
Antiguo 15/01/2014, 10:30
 
Fecha de Ingreso: junio-2013
Mensajes: 8
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: No puedo pasar objetos por $_SESSION

Si, me falto serializarlo antes de pasarlo, habia leido en la documentacion que el objeto se serializaba solo pero me parece que eso pasaba utilizando otra funcion. Muchas gracias!

Etiquetas: objetos, session
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:02.