Foros del Web » Programando para Internet » PHP »

ayuda con lectura de cookies

Estas en el tema de ayuda con lectura de cookies en el foro de PHP en Foros del Web. buenas, tengo la siguiente duda al leer las cookies, os explico tengo este archivo. <?php // Valores de ejemplo $id = "23"; $nick = "freed"; ...
  #1 (permalink)  
Antiguo 05/08/2003, 17:05
 
Fecha de Ingreso: enero-2003
Ubicación: Barcelona
Mensajes: 5
Antigüedad: 21 años, 2 meses
Puntos: 0
ayuda con lectura de cookies

buenas, tengo la siguiente duda al leer las cookies, os explico tengo este archivo.

<?php

// Valores de ejemplo

$id = "23";
$nick = "freed";
$logo = "rojo";
$idioma= "castellano";

$mago_cook = array ('id', 'nick', 'idioma', 'logo');

$datos_mago = array("id" => $id, "nick" => $nick,"idioma" => $idioma, "logo" => $logo);

if (! $cookie)
{
setcookie($mago_cook[0], $datos_mago['id'], time () + 3600);
setcookie($mago_cook[1], $datos_mago['nick'], time () + 3600);
setcookie($mago_cook[2], $datos_mago['idioma'], time () + 3600);
setcookie($mago_cook[3], $datos_mago['logo'], time () + 3600);

print "Cookies escritas\n";
}

?>

Y despues otro archivo, donde intento leer los datos de las cookies, y pongo esto :

<?php

echo $HTTP_COOKIE_VARS[$mago_cook[0]];
echo $HTTP_COOKIE_VARS[$mago_cook[1]];
echo $HTTP_COOKIE_VARS[$mago_cook[2]];
echo $HTTP_COOKIE_VARS[$mago_cook[3]];

?>

Y no consigio leer los datos, y en cambio en la cookie si q salen, exactamente en la cookie tengo esto.

2
127.0.0.1/arch/
1536
1845893504
29580201
212501872
29580193
*
id
16
127.0.0.1/arch/
1536
2740860800
29580200
1102159168
29580192
*
nick
rr
127.0.0.1/arch/
1536
2740860800
29580200
1102159168
29580192
*
idioma
2
127.0.0.1/arch/
1536
2740860800
29580200
1102309168
29580192
*
logo
2
127.0.0.1/arch/
1536
2740860800
29580200
1102469168
29580192
*
a
23
127.0.0.1/arch/
1536
1410926208
29580202
4065781872
29580193
*
s
freed
127.0.0.1/arch/
1536
1410926208
29580202
4065781872
29580193
*
d
castellano
127.0.0.1/arch/
1536
1410926208
29580202
4066091872
29580193
*
f
rojo
127.0.0.1/arch/
1536
1410926208
29580202
4066251872
29580193
*

Dentro de todos esto, estan los datos q grabo, pero no puedo sacar dichos datos.

A ver si alguien me puede decir q instruccion tengo mal, o que es lo q me falla.

un saludo,

freed
  #2 (permalink)  
Antiguo 05/08/2003, 17:20
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 22 años, 2 meses
Puntos: 5
setcookie(mago_cook[0], $datos_mago['id'], time () + 3600);
setcookie(mago_cook[1], $datos_mago['nick'], time () + 3600);
setcookie(mago_cook[2], $datos_mago['idioma'], time () + 3600);
setcookie(mago_cook[3], $datos_mago['logo'], time () + 3600);


echo $HTTP_COOKIE_VARS[mago_cook[0]];
echo $HTTP_COOKIE_VARS[mago_cook[1]];
echo $HTTP_COOKIE_VARS[mago_cook[2]];
echo $HTTP_COOKIE_VARS[mago_cook[3]];

Quitale el $ a los nombres de las cookies.
__________________
Manoloweb
  #3 (permalink)  
Antiguo 05/08/2003, 17:46
 
Fecha de Ingreso: enero-2003
Ubicación: Barcelona
Mensajes: 5
Antigüedad: 21 años, 2 meses
Puntos: 0
gracias por responder, pero me sigo encontrando con el mismo problema, en la cookie, me pone:

mago_cook[0]
23
127.0.0.1/arch/
1536
1586155136
29580209
4244920800
29580200
*
mago_cook[1]
freed
127.0.0.1/arch/
1536
1586155136
29580209
4245070800
29580200
*
mago_cook[2]
castellano
127.0.0.1/arch/
1536
1586155136
29580209
4245070800
29580200
*
mago_cook[3]
rojo
127.0.0.1/arch/
1536
1586155136
29580209
4245230800
29580200
*

q corresponde a los datos introducidos, pero al recuperar los datos, sigo sin poder leerlos...

puede q sea algo del php.ini ??? se me acaba de ocurrir, ya q si la sintaxis es la correcta, solo se me ocurre q sea eso... voy a echar un vistazo, y a ver q tal me va


gracias por responder

freed
  #4 (permalink)  
Antiguo 06/08/2003, 22:07
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Parece que no estás definiendo correctamente un array en una cookie ..

Al leer tus cookies no sé como andará la sintax que usas .. pero no me parece correcto .. En su defecto sería algo como:

Código PHP:
echo $HTTP_COOKIE_VARS[mago_cook][0]; 
De todas formas .. te invito a que leas el manual de PHP oficial en el capítulo cookies .. ahí se explica detalladamete como usar arrays (arreglos, matrices ..) en cookies.

www.php.net/setcookie

fjate en el ejemplo de php.net:

Código PHP:
<?php
// set the cookies
setcookie ("cookie[three]""cookiethree");
setcookie ("cookie[two]""cookietwo");
setcookie ("cookie[one]""cookieone");

// after the page reloads, print them out
if (isset($_COOKIE['cookie'])) {
    foreach (
$_COOKIE['cookie'] as $name => $value) {
        echo 
"$name : $value <br />\n";
    }
}

/* which prints

three : cookiethree
two : cookietwo
one : cookieone

*/
?>

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 09/08/2003, 07:38
 
Fecha de Ingreso: enero-2003
Ubicación: Barcelona
Mensajes: 5
Antigüedad: 21 años, 2 meses
Puntos: 0
Merci, al final era unos problemillas con la matriz, pero ya esta resuelto.

Venga un saludo


freed
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 11:33.