Foros del Web » Programando para Internet » PHP »

diferentes variables en una sola galleta

Estas en el tema de diferentes variables en una sola galleta en el foro de PHP en Foros del Web. hola amigos del web quisiera saber...si es posible....meter "varias" variables en una misma galleta....osea por ejemplo, el nick, la fecha, la ip. porque hasta el ...
  #1 (permalink)  
Antiguo 29/04/2003, 16:12
Avatar de fmmeson  
Fecha de Ingreso: enero-2002
Ubicación: Tucuman
Mensajes: 401
Antigüedad: 15 años, 10 meses
Puntos: 2
diferentes variables en una sola galleta

hola amigos del web quisiera saber...si es posible....meter "varias" variables en una misma galleta....osea por ejemplo, el nick, la fecha, la ip.
porque hasta el momento yo solo podia hacer esto:
Código PHP:
$fecha =date("d/m/Y | H:i:s");
setcookie('galleta1',$fecha,time()+2592000);
setcookie('galleta2',$_SERVER[SERVER_ADDR],time()+2592000);
setcookie('galleta3',$nick,time()+2592000); 
y para leerlas las tenia que hacer individualmente,
Código PHP:
echo "Tu ultima visita fue:" .$_COOKIE['galleta1']
echo 
"Tu ip es:" .$_COOKIE['galleta2']
echo 
"Tu nick es:" .$_COOKIE['galleta3'
Desde Ya Muchas Gracias!
  #2 (permalink)  
Antiguo 29/04/2003, 16:28
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

No se si es lo que buscas, pero en el manual http://www.php.net/manual/en/function.setcookie.php hay un ejemplo de como usar una cookie como un array.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 29/04/2003, 17:42
 
Fecha de Ingreso: diciembre-2002
Mensajes: 341
Antigüedad: 15 años
Puntos: 0
Puedes hacer lo siguiente:

Crea una solo cookie donde el valor de la misma contiene todas las variables que deseas poner.

Para dividir las variables metes un "|" o cualquier otro caracter similar que no pueda ser parte de las variables que quieres poner.

Código PHP:
$fecha =date("d/m/Y | H:i:s");

setcookie('galleta',$fecha.'|'.$_SERVER['SERVER_ADDR'].'|'.$nick ,time()+2592000); 
Una vez hecho esto, para leer el contenido de la cookie:

Código PHP:
$array explode('|',$_COOKIE['galleta']);

echo 
"Tu ultima visita fue:" .$array[0]
echo 
"Tu ip es:" .$array[1]
echo 
"Tu nick es:" .$array[2
En el manual tambien aparece la forma de crear arrays de cookies.
__________________
guebs - alojamiento web y dominios
www.guebs.com
blog.guebs.com

Última edición por Argintxe; 29/04/2003 a las 17:45
  #4 (permalink)  
Antiguo 29/04/2003, 20:07
Avatar de fmmeson  
Fecha de Ingreso: enero-2002
Ubicación: Tucuman
Mensajes: 401
Antigüedad: 15 años, 10 meses
Puntos: 2
Interesante solucion Argintxe vere en el manual.....que dice sobre...meter arrays en una galleta!
  #5 (permalink)  
Antiguo 29/04/2003, 20:38
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
La solución que plantea Argintxe es casi lo que hace PHP cuando metes un array en una cookie/session o la propagas por el URL .. es decir "la serializa" .. Luego tenemos que "deserializarla" ..

Con la opción de Argintxe sería aplicar un explode() como bien comenta .. Si dejas que lo haga "PHP" hay que usar serialize() y unserialize() funciones.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 29/04/2003, 21:21
Avatar de fmmeson  
Fecha de Ingreso: enero-2002
Ubicación: Tucuman
Mensajes: 401
Antigüedad: 15 años, 10 meses
Puntos: 2
Gracias eh aprendido bastante con el serialize() y unserialize()
-------------------------------escribe_cookie.php------------------
Código PHP:
$nickname="$nick";
$fecha_=date("d/m/Y | H:i:s");
$ip="$_SERVER[SERVER_ADDR]";
$datos_cookie=array($nickname,$fecha,$ip);
setcookie("datos_cookie",serialize($datos_cookie),time()+17280)
echo 
"<a href="lee_cookie.php">cookie</a>"
-------------------------------lee_cookie.php------------------
Código PHP:
$datos_cookie=unserialize(stripslashes($_COOKIE['datos_cookie']));
echo_$datos_cookie[1]."<br>";
echo_$datos_cookie[2]."<br>";
echo_$datos_cookie[3]."<br>"
mi pregunta es ahora ¿¿¿¿¿se puede acceder por medio del indice ASOCIATIVO en vez del indice NUMERICO?????
  #7 (permalink)  
Antiguo 29/04/2003, 21:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
En teoría .. si defines tu array como un array asociativo .. si que pordrías:

Código PHP:
$datos_cookie=array("nick"=>$nickname,"fecha"=>$fecha,"ip"=>$ip); 
Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 02:57.