Foros del Web » Programando para Internet » PHP »

pregunta infantil: envio cookies

Estas en el tema de pregunta infantil: envio cookies en el foro de PHP en Foros del Web. ¿para enviar una cookie en php se debe saber si el explorador del cliente acepta o no las cookies? si es necesario como se haria ...
  #1 (permalink)  
Antiguo 30/06/2004, 21:40
Avatar de don_fransisco  
Fecha de Ingreso: junio-2004
Mensajes: 192
Antigüedad: 13 años, 5 meses
Puntos: 1
pregunta infantil: envio cookies

¿para enviar una cookie en php se debe saber si el explorador del cliente acepta o no las cookies? si es necesario como se haria en php.

otra pregunta como saber la hora GMT correspondiente a chile para dar un tiempo de vida a las cookies.

Última edición por don_fransisco; 30/06/2004 a las 21:43
  #2 (permalink)  
Antiguo 30/06/2004, 23:44
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Desde PHP simplemente lanzas la creación de tu cookie:

setcookie()

Si el cliente la acepta .. la podras obtener en tus próximas ejecuciones de tus scripts de tu aplicación (vía: $_COOKIE['nombre_que_le_des'])

La prueba para saber si el cliente acepta cookies o no sería del tipo "ensayo y error" .. es decir, envias la cookie (setcookie()) y seguidamente recargas la página para intentar leer su valor .. si lo obtienes ya sabe que las acepta sino, no la vas a obtener.

------

El tema de la hora GMT puedes usar:

gmmktime()
http://cl.php.net/manual/es/function.gmmktime.php

Pero, la duración de una cookie se suele expresar en "segundos desde que se creó" .. así que te debería ser indiferente si la hora se tomó como referencia GMT 0 o GMT -04:00 (que vendría a ser Chile). Pero si quieres que la cookie expire X dia a tal hora .. OK, usa la función mencionada para definer una fecha concreta (y obtenerla en formato UNIX TIMESTAMP (con tu correción de la franja horária) para aplicarlo en la función setcookie() y definir su tiempo de vencimiento.

Un saludo,
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:43.