Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Pasarlo a clase ???

Estas en el tema de Pasarlo a clase ??? en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Buenas, no soy programador senior de php, tengo idea y se usar clases y demas pero hay algo que no tengo claro como hacerlo. Yo ...
  #1 (permalink)  
Antiguo 26/05/2009, 10:00
 
Fecha de Ingreso: octubre-2005
Mensajes: 132
Antigüedad: 19 años, 2 meses
Puntos: 1
Pasarlo a clase ???

Buenas, no soy programador senior de php, tengo idea y se usar clases y demas pero hay algo que no tengo claro como hacerlo.

Yo tengo mi clase usuario , algo asi ( lo hago de memoria pero es cojer la idea ) :

Código PHP:
class usuario{

   var 
$nombre;
   var 
$playerID;

   function 
identificar($param1$param2) {
     
select para sacar el nombre y demas.
    
$this->nombre $nombre;
    
$this->playerID $id;
   
   }

}


$datos_usuario = new usuario(); 
$datos_usuario->identificar($user$pass); 
Yo con esto ya tengo el user y id del usuario, a partir de ahi "juego" con esos datos, hasta aqui ok, mi duda es ahora. ¿Que pasa cuando cambio de pagina?.

Por que yo todo esto lo tengo en una pagina, y funciona bien pero cuando el usuario me valla a otra pagina ¿tengo que volver a llamar a la funcion identificar otra vez? ¿otra vez identificarse?.

¿Como tendria que hacer para que la clase este fija en toda mi aplicacion siempre?

Gracias anticipadas. Un saludo.
__________________
------------------------------------------------------------------
Vente a jugar al ajedrez :
Jugar ajedrez online
  #2 (permalink)  
Antiguo 26/05/2009, 11:45
 
Fecha de Ingreso: mayo-2009
Mensajes: 3
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Pasarlo a clase ???

ps podrias guardar las variables del usuario en una sesion y ya pero no entendi bn tu pregunta
  #3 (permalink)  
Antiguo 28/05/2009, 15:21
 
Fecha de Ingreso: junio-2008
Ubicación: Capital Federal xD
Mensajes: 1.208
Antigüedad: 16 años, 6 meses
Puntos: 35
Respuesta: Pasarlo a clase ???

Hola a todos!
Yo tambien soy principiante en php orientado a objetos.

Entiendo lo que pregunta chelejuan4 , y la respuesta de alegomos.
Pero que sucede si debo usar varios atributos de la clases en tado el sitio?
EJ:nombre, playerID, direccion, telefono, etc.

Debo crear variables sesion para cada uno? o trasladan el objeto?
De que manera lo resuelven uds?
Gracias!!
__________________
I am Doyle please insert code.
  #4 (permalink)  
Antiguo 28/05/2009, 16:08
 
Fecha de Ingreso: mayo-2009
Mensajes: 12
Antigüedad: 15 años, 7 meses
Puntos: 0
Cita:
Iniciado por chelejuan4 Ver Mensaje
Por que yo todo esto lo tengo en una pagina, y funciona bien pero cuando el usuario me valla a otra pagina ¿tengo que volver a llamar a la funcion identificar otra vez? ¿otra vez identificarse?.

¿Como tendria que hacer para que la clase este fija en toda mi aplicacion siempre?
Creo que esto no es propio de la orientación a objetos, sino de PHP. Cuando se trabaja de manera procedual, en cada llamada no tienes que validar siempre, en su lugar usas sesiones para ver si el usuario es válido o no, pues aquí es lo mismo.

Cita:
Iniciado por doylelives Ver Mensaje
Pero que sucede si debo usar varios atributos de la clases en tado el sitio?
EJ:nombre, playerID, direccion, telefono, etc.

Debo crear variables sesion para cada uno? o trasladan el objeto?
De que manera lo resuelven uds?
Gracias!!
Guardas todo el objeto en sesión.

Código php:
Ver original
  1.  
  2. $objeto = new Clase();
  3. $_SESSION['objeto'] = serialize($objeto);
  4.  
  5.  
  6. // y en otro archivo
  7.  
  8. $objeto = unserialize($_SESSION['objeto']);

Algo así sería. Como notas, cada que llamas pasas un objeto por las funciones serialize y unserialize, se mandan a llamar los métodos mágicos __sleep y __wakeup respectivamente.


Última edición por GatorV; 29/05/2009 a las 16:56
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 01:59.