Gold Vision Communications / USA
 GOLDVISION.COM
Serving the Multimedia Community since 1989.
English Site | German Site 

 Web Hosting

 Virtual Dedicated Servers

 Chequeo de dominio

 Haga su pedido

 Estado del pedido

 Support

 Contáctenos

 Download

 Network

 Network Status

 Webdesign / Templates

 Efectuar pago

 Terms & Conditions

 Imprimir

 Notas Legales

 Declaración de Privacidad
  PHP / setcookie
setcookie

setcookie

(PHP 3, PHP 4 )

setcookie -- Envía una cookie

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:

echo $TestCookie;
echo $HTTP_COOKIE_VARS["TestCookie"];

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:

setcookie( "cookie[three]", "cookiethree" );
setcookie( "cookie[two]", "cookietwo" );
setcookie( "cookie[one]", "cookieone" );
if ( isset( $cookie ) ) {
   while( list( $name, $value ) = each( $cookie ) ) {
	  echo "$name == $value<br>\n";
   }
}

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.


© 1998-2007 Gold Vision Communications All Rights Reserved.