Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/08/2012, 14:47
jrsantos
 
Fecha de Ingreso: julio-2012
Mensajes: 25
Antigüedad: 11 años, 9 meses
Puntos: 3
Cachear contenido

Hola Amigos,

Estoy realizando una aplicación la cual funciona de la siguiente manera.
Cuando el usuario admin se loguea hago una llamada a la base de datos solicitando el listado de usuarios que están bajo su administración.

Tengo que hacer estas mismas llamadas a la base de datos en otra parte de la aplicación.

Se me ha ocurrido en vez de solicitar los datos una y otra vez , crear una especie de buffer que me almacene temporalmente estos datos para tenerlo disponible durante la sesión.

He pensé hacerlo con la sesiones pero no termino de pillar el asunto.
Código PHP:
Ver original
  1. class Cache_model extends CI_Model
  2. {
  3.     public function llenarBuffer()
  4.     {
  5.         $cacheData = $this->db->where('userId', 12834)->get('table_usuario');
  6.         $dump = array();
  7.         foreach ($cacheData->result() as $row) {
  8.             $dump[$row->id] = array(
  9.                 $row->Nombre,
  10.                 $row->Apellido,
  11.                 $row->Telefono,
  12.                 $row->Email
  13.                 );  
  14.         }
  15.         $this->session->set_userdata($dump);
  16.     }
  17. }
Luego si intento hacer una llamada de este modo
Código PHP:
Ver original
  1. $dataUser = $this->session->userdata(283);
  2. var_dump($dataUser); // No obtengo los datos

Esto en otro ambiente debería funcionar pero la forma como CI maneja el asunto de la sesiones no me permite hacerlo como lo tengo pensado.
Alguna sugerencia de como hacerlo usando este método o cualquier otro mas.

Gracias de antemano.

Saludos!