Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: WHK en 4 Abril 2009, 11:24 am



Título: Manejo de arrays para una sesion en mysql
Publicado por: WHK en 4 Abril 2009, 11:24 am
Hola, tenía la idea de almacenar todo el contenido de un array dentro de una base de datos y después poder obtenerla. No se como pueda guardarla sin tener que procesar cada valor de cada variable porque al final es la sesión del visitante y este puede contener varios valores y varios arrays dentro de otros arrays.
No puedo usar explode e implode porque si tengo dos arrays uno dentro de otro no podrá debolverme el string.

Alguien tiene alguna idea?

ejemplo:
Código
  1. <?php
  2. $sesion = obtener_sesion($_COOKIE['SESION']);
  3. $sesion['nuevo'] = array('pedro', '25', 'como me llamo?' => 'WHK', 's45d7e8');
  4. grabar_sesion($_COOKIE['SESION'], $datos);
  5. ?>
Esque quiero ser independiente de las sesiones phpsessid debido a que si montas el code en un servidor que no soporta sesiones cmo los virtuales estás jodido.
Había pensado hacer las sesiones en textos txt igual que sqllite pero encontré que era mas ordenado en la base de datos aunque no es mas eficiente, luego pensaré eso, por ahora quiero ver como tomar un array y pasarlo a string para despues poder volverlo a array.


Título: Re: Manejo de arrays para una sesion en mysql
Publicado por: XafiloX en 4 Abril 2009, 12:19 pm
Si lo que quieres es guardar un array dentro de una base de datos, lo mas facil es que utilices serialize para guardarla como cadena de texto en la base de datos, y unserialize para volver a convertirlo en array...

Mas info: http://es.php.net/serialize (http://es.php.net/serialize)


Título: Re: Manejo de arrays para una sesion en mysql
Publicado por: WHK en 5 Abril 2009, 03:30 am
Gracias eso necesitaba, no conocía esa función  ;D.