Descripción
int
setcookie ( string name, string value, int expire, string path, string domain, int secure)
setcookie() define una cookie para ser enviada
con el resto de la información de la cabecera_ Las cookies deben
enviarse antes de mandar cualquier otra cabecera
(esta es una restricción de las cookies, no de PHP)_ Esto requiere
que sitúe las llamadas a esta función antes de cualquier etiqueta
<html> o <head>_
Todos los parámetros excepto name son
opcionales_ Si sólo se especifica el parámetro name, la cookie con
ese nombre se borrará del cliente remoto_ También puede sustituir
cualquier parámetro por una cadena de texto vacía
("") y saltar así ese parámetro_ Los
parámetros expire y secure
son números enteros y no se pueden saltar con una cadena de texto
vacía_ En su lugar utilice un cero (0)_ El
parámetro expire es un entero de tiempo
típico de UNIX tal como lo devuelven las funciones
time() o mktime()_ El parámetro
secure indica que la cookie se debe transmitir
única y exclusivamente sobre una conexión segura HTTPS_
Fallos habituales:
Las cookies no se hacen visibles hasta la siguiente carga de una
página para la que la cookie deba estar visible_
Las llamadas múltiples a setcookie() en el mismo script
se ejecutarán en orden inverso_ Si está intentando borrar una cookie
antes de insertar otra, debe situar la llamada de inserción antes de
la de borrado_
A continuación se muestran algunos ejemplos::
Ejemplo 1_ setcookie(), ejemplos setcookie("TestCookie","Test Value");
setcookie("TestCookie",$value,time()+3600); /* expire in 1 hour */
setcookie("TestCookie",$value,time()+3600,"/~rasmus/","_utoronto_ca",1); |
|
Tenga en cuenta que el campo value de la cookie se codifica como URL
(urlencode) automáticamente cuando envía la cookie_ Cuando ésta se recibe,
se descodifica autómaticamente y se asigna a una variable con el
mismo nombre que el nombre de la cookie_ Para ver el contenido de
nuestra cookie de prueba en un script, simplemente utilice uno de
los siguientes ejemplos:
También puede utilizar arrays de cookies empleando la notación de
array en el nombre de la cookie_ Esto tiene como efecto establecer
tantas cookies como elementos de array, pero cuando el script
recibe la cookie, se guardan los valores en un array con el
nombre de la cookie:
Para obtener más información sobre las cookies, consulte la
especificación de cookies de Netscape, que se encuentra
en http://www_netscape_com/newsref/std/cookie_spec.html_
Microsoft Internet Explorer 4 con Service Pack 1 no
funciona correctamente con las cookies que tienen asociado
el parámetro path_
Netscape Communicator 4_05 y Microsoft Internet Explorer 3_x
funcionan aparentemente de manera incorrecta cuando no se
especifican los parámetros path y time_