Para crear una cookie que sólo tenga existencia mientras no cerremos la ventana del navegador, pasaremos como fecha de expiración de la cookie, el valor cero.
Una vez que la instancia del navegador se cierra, dicha cookie desaparecerá.
Este tipo de cookie puede ser muy útil para validar un usuario en un conjunto de páginas, si previamente ingresó correctamente su nombre de usuario y clave. Es decir, una vez validado el usuario, se verifica en páginas sucesivas si existe la cookie. Una vez que el usuario cierra el navegador, no hay posibilidad de solicitar las páginas recorridas sin previa validación nuevamente de clave y usuario.
Entonces la sintaxis es:
setcookie(<nombre de la cookie>,<valor>,0)
Veamos un pequeño ejemplo para crear y verificar si existe una cookie de sesión.
La primera página es:
pagina1.php
<html> <head> <title>Problema</title> </head> <body> <?php if (isset($_COOKIE['usu'])) echo "Cookie de sesión creada. Su valor es $_COOKIE[usu]"; else echo "No existe cookie de sesión"; ?> <br> <a href="pagina2.php">Crear cookie de sesión</a> </body> </html>
La segunda página es la que crea la cookie de sesión:
pagina2.php
<?php setcookie("usu", "diego", 0); ?> <html> <head> <title>Problema</title> </head> <body> Cookie de sesión creada.<br> <a href="pagina1.php">Retornar a la página anterior.</a> </body> </html>
Si ejecutamos este programa y creamos la cookie de sesión, la misma existirá mientras no cerremos el navegador. Probemos luego cerrando completamente el navegador y veremos que contiene la cookie de sesión.
Copiar el contenido de este cuadro de texto al VS Code y almacenarlo en la carpeta c:\xampp\htdocs con un nombre con extensión php.
luego abrir el navegador (Chrome, FireFox, IExplorer etc.) y en la barra de direcciones tipear:
http://localhost/pagina1.php (o el nombre del
archivo que le dió)