Foros del Web » Programando para Internet » PHP »

Variables objetos

Estas en el tema de Variables objetos en el foro de PHP en Foros del Web. Hola, estoy buscando información al respecto pero no encuentro. Mi duda es, si yo me declaro una variable de un tipo objeto (pongamos cliente) $cliente= ...
  #1 (permalink)  
Antiguo 11/04/2004, 03:54
 
Fecha de Ingreso: octubre-2003
Mensajes: 153
Antigüedad: 14 años, 1 mes
Puntos: 5
Variables objetos

Hola, estoy buscando información al respecto pero no encuentro. Mi duda es, si yo me declaro una variable de un tipo objeto (pongamos cliente)

$cliente= new cliente(); // por ejemplo

¿Como puedo pasar yo la variable $cliente, que es un objeto, a otra página? ¿Como se podria hacer con sesiones?

Gracias.

PD:
Se hacerlo con variables normales, tipo entero, string etc.

session_start();
$_session['mivariable']=2.
etc, pero no se hacerlo con variables "no normales", objetos jeje.

Gracias.
  #2 (permalink)  
Antiguo 11/04/2004, 04:22
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 14 años, 7 meses
Puntos: 2
creo que te refieres a esto...
Código PHP:
$_session['mivariable'] = $_POST['mivariable']; 
http://www.php.net/manual/en/reserve....variables.get
__________________
3w.valenciadjs.com
3w.laislatv.com
  #3 (permalink)  
Antiguo 11/04/2004, 08:43
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Lee la parte final de http://www.php.net/manual/en/languag...ialization.php . Basicamente dice que tendrias que poner antes de session_start() la definicion de la clase en todas las paginas.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #4 (permalink)  
Antiguo 11/04/2004, 11:26
 
Fecha de Ingreso: octubre-2003
Mensajes: 153
Antigüedad: 14 años, 1 mes
Puntos: 5
<?php
// classa.inc:

class A {
var $one = 1;

function show_one() {
echo $this->one;
}
}

// page1.php:

include("classa.inc");

$a = new A;
$s = serialize($a);
// store $s somewhere where page2.php can find it.
$fp = fopen("store", "w");
fputs($fp, $s);
fclose($fp);

// page2.php:

// this is needed for the unserialize to work properly.
include("classa.inc");

$s = implode("", @file("store"));
$a = unserialize($s);

// now use the function show_one() of the $a object.
$a->show_one();
?>

Esto es usar un fichero ¿No es eso una patatada?. Por lo que veo es la única forma de hacerlo pero... vaya, pensaba que no era tan ... asi. De todas formas GRACIAS ya que por más que he buscado no he encontrado y esto por lo menos me da una forma, aunque a mi entender un tanto patata jeje.
  #5 (permalink)  
Antiguo 11/04/2004, 11:33
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Te dije la parte final, el texto que viene detras de ese codigo. Basicamente el codigo seria:
Código PHP:
<?php
include('class.inc.php'); // la definicion de la class
session_start():
$a=new Clase();
$_SESSION['objeto']=$a;
?>
y en todo fichero que use sesiones:
Código PHP:
include('class.inc.php');
session_start(); 
Si antes de un session_start() no incluyes la definicion de la clase, si una sesion con una variable que sea un objeto pasa por ese codigo, el objeto perdera las funciones.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 04:05.