Você está na página 1de 3

ASIX Mdulo 9

UF 1: Lenguaje de guin de servidor

Cookies en PHP
Las cookies sirven para almacenar informacin en los equipos cliente que visitan una pgina web. setcookie(nombre, valor)

Crea una cookie con el nombre y el valor pasado como parmetro de la funcin. La funcin setcookie() devuelve un valor numrico indicando si se produjo algn fallo en el proceso. Si devuelve un valor distinto de cero significa que el proceso de transferencia se realiz correctamente, aunque eso tampoco asegura que la cookie haya sido creada en el equipo del cliente, ya que este podra no haberla aceptado. Sintaxis completa: setcookie(string nombre, string valor, int expiracin, string path, string dominio, int seguro)

expiracin: fecha de expiracin de la cookie. path: determina la visibilidad de dicha cookie en el servidor web. dominio: indica un dominio en el que estar disponible. seguro: indica que la cookie solo debe ser transferida bajo conexiones seguras HTTPS.

Ejemplo_Cookie: Creacin de una cookie con el nombre de usuario introducido en un formulario. index.php <h3>Registro como usuario</h3> <form method="post" action="cookie.php"> Usuario: <input type="text" name="nombre"> <br> <input type="submit" name="aceptar" value="enviar"> </form> cookie.php <h3>Registro como usuario</h3> <?php if(isset($_POST["nombre"])){ setcookie("nomusuario", $_POST["nombre"]); } ?> <!doctype html public "-//W3C//DTD HTML 4.0 //EN"> <html> <head><title>Cookie</title></head> <body> <h2>Gracias por registrarte.</h2> </body></html>

ASIX Mdulo 9

UF 1: Lenguaje de guin de servidor

privada.php <body> <?php $nomusuario=$_COOKIE["nomusuario"]; if(isset($nomusuario)){ echo "$nomusuario, nuestros estrenos para ti son: Shrek 2<br>"; } else{ echo "Por favor, regstrese"; } ?> </body>

Cookies de sesin y Cookies permanentes


Cuando se utiliza la sintaxis mnima para generar una cookie, es decir, el nombre y el valor, la cookie slo estar definida durante la sesin, cuando el usuario cierre el navegador, desaparecer. Si se desea que la cookie permanezca en el equipo del usuario cuando este cierre la sesin, deber indicarse en su construccin un parmetro adicional con un periodo de expiracin. En este caso la cookie quedar almacenada en un fichero de texto en el equipo cliente hasta que expire el periodo establecido. setcookie(nombre, valor, expiracin) El parmetro de expiracin debe indicarse sumando a la funcin time() el nmero de segundos que se desea que permanezca la cookie en el equipo del usuario. Ejemplo: Cookie con un periodo de expiracin de 60 segundos. setcookie(Cookie1, Valor1, time() + 60); Ejemplo: Cookie con un periodo de expiracin de 1 hora. setcookie(Cookie2, Valor2, time() + 3600); Ejemplo: Cookie con un periodo de expiracin de 30 das. setcookie(Cookie3, Valor3, time() + 30*24*3600); Para borrar una cookie que tiene establecido un valor con periodo de expiracin antes de que dicho periodo finalice, debe usarse la sintaxis: setcookie(NombreCookie, , time());

ASIX Mdulo 9

UF 1: Lenguaje de guin de servidor

Ejemplo ultimo_acceso.php: Cookie para almacenar en el equipo cliente el instante de tiempo correspondiente al ltimo acceso a la pgina. El programa comprobar si han transcurrido ms de 7 das desde ese ltimo acceso y en caso afirmativo mostrar un mensaje avisando de ese hecho. <?php $ahora=time(); setcookie("ultima", $ahora, $ahora + 30*24*3600); if(isset($ultima) and ($ahora - $ultima > 7-24-3600)){ echo "Hace ms de una semana que no nos visitabas"; } ?> <!doctype html public "-//W3C//DTD HTML 4.0 //EN"> <html> <head> <title>Pgina de inicio</title> </head> <body> <h2>Bienvenido a nuestra pgina</h2> </body> </html>

Você também pode gostar