Google
Web dns.bdat.net

Re: [PHP-ES] problema con cokies y setcookie

Write haof XML files: Grenville Tryon Pera ( gtryonp@hotmail.com)
Fecha: vie 25 mar 2005 - 18:43:34 CET


Entra a www.perumm.com A la izquierda puedes seleccionar el color haciendo
click en uno de los botones de color

Cierra el explorer y abrelo de nuevo. Si tiene el color que seleccionaste,
mi cookie trabaja bien en mi servidor y tu cliente. El codigo que cambia el
color es:

setcookie("color", $ncolor,time()+24*60*60*365);

En mi programa, el codigo para leer el cookie es:

<?
session_start();
//default
$ctexto="#000000";
if ($_COOKIE["color"]=="o")
{
$ctexto="#ffffff";
...

Prueba ese procedimiento. A mi me funciona ok.

Saludos,
Grenville Tryon

>From: "Igor Ormaetxebarria" < igor@txurdi.net>
>To: "Oswaldo Otero" < oswaldo.otero@gmail.com>,< php-es@lists.php.net>
>Subject: Re: [PHP-ES] problema con cokies y setcookie
>Date: Fri, 25 Mar 2005 09:19:32 +0100
>
>Cuando digo que no me funciona es porque no guarda la cookie, o si la
>guarda no la muestra. Creé 3 archivos, uno que crea la cookie, otro que la
>visualiza y otro que la borra. Cuando lo pruebo en local, llamo a
>"seteargalleta.php" y crea la cookie, y luego llamo a "vergalleta.php" y la
>muestra en pantalla, pero cuando lo he subido al servidor, ya no funciona,
>no visualiza la cookie, o por lo menos, dice que está vacía.
>Respecto a lo de las sesiones, si, es verdad que son más comodas, y que no
>dependen del cliente, pero yo quiero usar unas y otras, xq tienen
>funcionalidades diferentes. Mi intención es usar sesiones para mantener al
>usuario activo mientras navega, pero quiero tbn usar las cookies para
>recordar el usuario que entra a mi web, y que no tenga que logarse cada vez
>que entra.
>Los navegadores que no tienen las cookies habilitadas, no las usarán, pero
>los que si las tienen, pues no tendrán que logarse cada vez que entren.
>PAra ver cual es el error del que hablo, entra aquí,
>>http://www.txurdi.net/pruebas/galletas2a/seteargalleta.php
>donde se crea la galleta, y luego aquí,
>>http://www.txurdi.net/pruebas/galletas2a/vergalleta.php
>y devería verse el contenido de la galleta, pero se ve que la galleta no
>tiene nada :-(
>
>(si lo hago en local funciona bien, por lo que el error me supongo que
>estará en los parámetros de setcookie, pero no consigo encontrar la
>convinación correcta...)
>
>espero que me podais echar una mano...
>
>un saludo,
>
>txurdi.
>
>----- Original Message ----- From: "Oswaldo Otero"
>< oswaldo.otero@gmail.com>
>To: "Igor Ormaetxebarria" < igor@txurdi.net>
>Sent: Wednesday, March 23, 2005 4:39 PM
>Subject: Re: [PHP-ES] problema con cokies y setcookie
>
>
>Hola igor, porque dices exactamente que no te funciona. Puedes por
>favor, explicarnos mas a fondo. Por otro lado, si quieres que tu vida
>sea sencilla, todo un paseo de verano, yo te recomiendo usar sesiones,
>quiza al principio, sea complicado, pero es facil. Lo de las sessiones
>es porque es mas facil, tus clientes en sus navegadores, no tienen que
>hacer mucho para poder usar el sitio, mientras que las cookies, exigen
>que tengas cookies habilitadas y bueno todos esos problemas.
>
>
>On Wed, 23 Mar 2005 13:18:49 +0100, Igor Ormaetxebarria < igor@txurdi.net>
>wrote:
>>Hola lista,
>>estoy haciendo una web que usa sesiones y cookies, pero tengo problemas
>>con las cookies.
>>he hecho una prueba tipo hola mundo con cookies, y en local me funciona
>>bien, pero cuando lo subo al servidor no funciona. Me podéis echar un
>>cable? es un código sencillo de entender, creo.
>>Os paso el código y los links haber si podéis echarle un vistazo:
>>
>>http://www.txurdi.net/pruebas/galletas2a/vergalleta.php
>>http://www.txurdi.net/pruebas/galletas2a/seteargalleta.php
>>http://www.txurdi.net/pruebas/galletas2a/borrargalleta.php
>>
>>---------------------------------------------------------------------------------------------------------
>>vergalleta.php:
>><?php
>>include_once ("funciones.php");
>>?>
>><html>
>>
>><head>
>><title>Pagina nueva 1</title>
>></head>
>>
>><body>
>><p>Lo que hay en la galleta:</p>
>><pre>
>><?php
>> $galletita_ser = $_COOKIE['prueba_galletas'];
>> $galletita = unserialize ($galletita_ser);
>>var_dump ($galletita);
>>?>
>></pre>
>></body>
>>
>></html>
>>---------------------------------------------------------------------------------------------------------
>>---------------------------------------------------------------------------------------------------------
>>seteargalleta.php:
>><?php
>>include_once ("funciones.php");
>>$su_usuario_datos['id_usuario'] = 0;
>>$su_usuario_datos['nick'] = "txurdi";
>>$su_usuario_datos['pass'] = mktime();
>>
>> $galletita_ser = serialize ($su_usuario_datos);
>> $tiempo = time() + 1209600;
>> setcookie ('prueba_galletas', $galletita_ser, $tiempo, "/", "");
>>
>>?>
>><html>
>>
>><head>
>><title>Pagina nueva 1</title>
>></head>
>>
>><body>
>><p>Acabamos de setear la galleta, osea que no está cambiado.</p>
>><p>Lo que hay en la galleta:</p>
>><pre>
>><?php
>> $galletita_ser = $_COOKIE['prueba_galletas'];
>> $galletita = unserialize ($galletita_ser);
>>var_dump ($galletita);
>>?>
>></pre>
>></body>
>>
>></html>
>>---------------------------------------------------------------------------------------------------------
>>---------------------------------------------------------------------------------------------------------
>>borrargalleta.php:
>><?php
>>include_once ("funciones.php");
>>borrar_galleta();
>>?>
>><html>
>>
>><head>
>><title>Pagina nueva 1</title>
>></head>
>>
>><body>
>><p>Lo que hay en la galleta:</p>
>><pre>
>><?php
>> $galletita_ser = $_COOKIE['prueba_galletas'];
>> $galletita = unserialize ($galletita_ser);
>>var_dump ($galletita);
>>?>
>></pre>
>></body>
>>
>></html>
>>
>>---------------------------------------------------------------------------------------------------------
>>---------------------------------------------------------------------------------------------------------
>>funciones.php:
>><?php
>> define('SU_GALLETA','prueba_galletas');
>> define('TIEMPO_GALLETA', 1209600); //14 dias. 14*24*60*60
>>
>>function existe_galleta()
>>{
>> if (isset($_COOKIE[SU_GALLETA])) return true;
>> else return false;
>>}
>>
>>function cargar_galleta()
>>{
>>
>> $galletita_ser = $_COOKIE[SU_GALLETA];
>> $galletita = unserialize ($galletita_ser);
>>// $galletita2 = unserialize ($galletita);
>> return $galletita;
>>}
>>
>>function guardar_galleta($su_usuario_datos)
>>{
>> $galletita_ser = serialize ($su_usuario_datos);
>> $tiempo = time() + TIEMPO_GALLETA;
>> setcookie (SU_GALLETA, $galletita_ser, $tiempo, '/', '');
>>}
>>function borrar_galleta()
>>{
>> setcookie (SU_GALLETA, "", 0, '/', '');
>>}
>>
>>?>
>>---------------------------------------------------------------------------------------------------------
>>
>
>
>--
>Oswaldo Otero en Gmail
>
>La "G" es de GEEK
>
>--
>PHP Spanish Localization Talk Mailing List (http://www.php.net/)
>To unsubscribe, visit: http://www.php.net/unsub.php
>

_________________________________________________________________
Visita MSN Latino Entretenimiento: ¡música, cine, chismes, TV y más...!
http://latino.msn.com/entretenimiento/

-- 
PHP Spanish Localization Talk Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


Este archivo fue generado por hypermail 2.1.7 : sáb 18 mar 2006 - 18:24:09 CET