Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-07-2006
Luzma Luzma is offline
Miembro
 
Registrado: abr 2006
Posts: 26
Poder: 0
Luzma Va por buen camino
Red face duda con cookies

Hola a tod@s,

Estoy incursionando en el mundo del php y tengo un problemita, espero que me puedan ayudar.

Resulta que tengo un archivo que me crea una cookie

Código PHP:
setcookie("Dato","Hola",time()+3600,"/");
 
print(
$_COOKIE["Dato"]); 
y en teoría me debería mostrar al cargar la página la palabra Hola, ¿estoy en lo cierto, verdad?

pero no es así, me muestra un error (Undefined index: Dato in ....), lo extraño (para mí es extrano ya que no sé casi nada de php) es que al actualizar la página ya me muestra Hola.

La pregunta es por qué pasa eso. (¿Será un problema con mi PC o algo así?)


Ahora bien, otra duda del mismo tema:

(archivo a.php)
Código PHP:
<?php
setcookie
("Dato","Hola",time()+3600,"/");
 
print(
$_COOKIE["Dato"]);
?>
<a href="b.php">ir a b.php</a>
y en b.php
Código PHP:
<a href="a.php">ir a a.php</a
Supongamos que ya di F5 a la página y me muestra la palabra Hola, doy click en "ir a a b.php" y en b.php doy click en "ir a a.php" me vuelve a mostrar el error de arriba (Undefined index: Dato in ....), no entiendo por qué pasa eso. Espero que me puedan explicar.

Saludos.
Responder Con Cita
  #2  
Antiguo 07-07-2006
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 22
kayetano Va por buen camino
Hola

El funcionamiento es correcto, una vez has creado una cookie en php ties que recargar la página.

La segunda duda, en teoría una vez que a cargado la cookie la tienes que poder consultar hasta que se elimine, pero como tu la estas creando cada vez que entras en a.php puede pasar de todo. Puedes probar con el siguiente código:
Código PHP:
<?php
if( !isset( $_COOKIE["Dato"] ) ) { // Creo la cookie y recargo la página.
   
setcookie("Dato","Hola",time()+3600,"/");
   
header"Location: a.php" );
   exit();
}
if( isset( 
$_COOKIE["Dato"] ) )
   print(
$_COOKIE["Dato"]);
?>
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente

Última edición por kayetano fecha: 07-07-2006 a las 10:31:43.
Responder Con Cita
  #3  
Antiguo 07-07-2006
Luzma Luzma is offline
Miembro
 
Registrado: abr 2006
Posts: 26
Poder: 0
Luzma Va por buen camino
Gracias kayetano por tu ayuda, ya le voy entendiendo.

Con tu mismo código, si sólo le agregamos:

(a.php)
Código PHP:
<?php
if( !isset( $_COOKIE["Dato"] ) ) { // Creo la cookie y recargo la página.
setcookie("Dato","Hola",time()+3600,"/");
header"Location: a.php" );
exit();
}
if( isset( 
$_COOKIE["Dato"] ) )
print(
$_COOKIE["Dato"]);
?> 
 
<br>
<a href="b.php">ir a b.php</a>
y en b.php
Código PHP:
<?php
if( isset( $_COOKIE["Dato"] ) )
print(
$_COOKIE["Dato"]);
else
print(
"amigo");
?>
¿Por qué me muestra "amigo" y no "Hola" si se supone que ya se creo la cookie?.

¿Cómo puedo hacerle para que me muestre "Hola" en b.php?
Responder Con Cita
  #4  
Antiguo 08-07-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Debes tener el navegador de que haces uso de forma que no admita "cookies" o que admita sólo determinadas "cookies", porque, ciertamente, el código fuente de los archivos "a.php" y "b.php" es correcto y, tras una prueba, todo funciona tal como se espera.

¿Solución? Revisa las opciones del navegador y asegúrate de que este admita "cookies".
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #5  
Antiguo 08-07-2006
Luzma Luzma is offline
Miembro
 
Registrado: abr 2006
Posts: 26
Poder: 0
Luzma Va por buen camino
Talking

Cita:
Empezado por dec
¿Solución? Revisa las opciones del navegador y asegúrate de que este admita "cookies".
Sí dec, tienes razón.

Lo que pasa es que el firewall bloquea algunas cookies, gracias por tu ayuda.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
TWebBrowser, cookies y sesiones Marcus Internet 2 14-09-2005 11:30:39
¿como uso cookies con Delphi? JXJ Internet 2 17-08-2005 18:52:58
Una duda condor Varios 8 02-06-2004 05:33:56
Asunto de cookies y sesiones gatsu PHP 3 26-04-2004 18:55:24
Problemas con el manejo de cookies mauriciorazquin Internet 0 21-10-2003 23:30:08


La franja horaria es GMT +2. Ahora son las 11:20:02.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi