Diferencia entre revisiones de «Usuario:ManuelRomero/php/cookies»

De WikiEducator
Saltar a: navegación, buscar
(Recuperar la cookie)
Línea 15: Línea 15:
 
|}las  
 
|}las  
 
===Qué es una Cookie===
 
===Qué es una Cookie===
*Una Cookie es un fichero que se almacene en el cliente y guarda información de ese cliente en referencia a una determinada página web
+
*Una cookie es una pequeña cantidad de datos almacenada por el navegador del usuario cuando solicita una página a un servidor.
 +
*Con esto podemos suplir la característica de que http es un protocolo sin estado (Insistir en que esto es una característica del protocolo, no una limitación.
 +
*Una Cookie es un fichero que se '''''almacene en el cliente''''' y guarda información de ese cliente en referencia a una determinada sitio web.
 
*Como se guardan en el cliente, se necesita confirmación expresa del cliente para dejar que se almacenen cosas en su equipo
 
*Como se guardan en el cliente, se necesita confirmación expresa del cliente para dejar que se almacenen cosas en su equipo
 
*En general no se debe de abusar de ellas, máxime cuando muchos las pueden tener deshabilitadas y esto puede impedir que nuestra aplicación web se ejecute de forma eficiente o incluso correcta.
 
*En general no se debe de abusar de ellas, máxime cuando muchos las pueden tener deshabilitadas y esto puede impedir que nuestra aplicación web se ejecute de forma eficiente o incluso correcta.
 +
*El servidor es quien solicita la creación del coockie en el cliente
 +
*El cliente crea  un fichero con dicha información
 +
*Una vez creada, solo puede ser leída por el sitio web que la creó.
 
*Para trabajar con cookies tenemos que hacer dos cosas
 
*Para trabajar con cookies tenemos que hacer dos cosas
 +
*El tamaño máximo de un cookie está limitado a 4K.
 
#Alamacenar o crear la cookie
 
#Alamacenar o crear la cookie
 
#Poder leerla en un momento determinado
 
#Poder leerla en un momento determinado
Línea 26: Línea 32:
 
  http://es.php.net/manual/es/function.setcookie.php
 
  http://es.php.net/manual/es/function.setcookie.php
 
*Es habitual usar los tres primeros que serían
 
*Es habitual usar los tres primeros que serían
#nombre de la cookie
+
#Nombre de la cookie
#valor que almacenamos en ella
+
#Valor que almacenamos en ella
#tiempo de expiración: es un entero en segundos. Si no se especifica, la cookie termiará junto a esta sesión.
+
#Tiempo de expiración: es un entero en segundos. Si no se especifica, la cookie termiará junto a esta sesión.
 
*Por ejemplo si quieremos almacenar  el usuario y que tenga un tiempo de duración de 1 hora
 
*Por ejemplo si quieremos almacenar  el usuario y que tenga un tiempo de duración de 1 hora
 
<source lang=php>
 
<source lang=php>
Línea 36: Línea 42:
 
====Recuperar la cookie====
 
====Recuperar la cookie====
 
*El proceso de recuperación de la información que almacena una cookie es muy simple.  
 
*El proceso de recuperación de la información que almacena una cookie es muy simple.  
*Cuando accedes a un sitio web, el navegador le envía de forma automática todo el contenido de las cookies que almacene relativas a ese sitio en concreto.  
+
*Cuando accedes a un sitio web, el navegador (cliente),  le envía de forma automática todo el contenido de las cookies que almacene relativas a ese sitio en concreto (servidor).  
 
*Desde PHP se puede  acceder a esta información por medio del array $_COOKIE.
 
*Desde PHP se puede  acceder a esta información por medio del array $_COOKIE.
 
*Para recuperar los datos anteriores
 
*Para recuperar los datos anteriores
 
<source lang=php>
 
<source lang=php>
 
$usuario = $_COOKIE['usuario'];
 
$usuario = $_COOKIE['usuario'];
 
 
</source>
 
</source>
 +
====Borrar una cookie====
 +
*Para borrar la cookie usamos la función setcookie con un tiempo negativo
 +
<source lang="php">
 +
<?php
 +
// Ponemos un tiempo de expiración negativo
 +
setcookie("user", "", time()-3600);
 +
?>
 +
</source>
 +
}}
 
{{Actividad|
 
{{Actividad|
 
*En la página  registro.php anterior, almacena en una cookie el último instante en que el cualquier usuario visitó la página.  
 
*En la página  registro.php anterior, almacena en una cookie el último instante en que el cualquier usuario visitó la página.  
Línea 49: Línea 63:
 
* Deberás utilizar la función setcookie para guardar el instante de su anterior visita y mostrar su contenido utilizando el array $_COOKIE.
 
* Deberás utilizar la función setcookie para guardar el instante de su anterior visita y mostrar su contenido utilizando el array $_COOKIE.
 
}}
 
}}
 +
{{Resumen|}}
 +
{{Lectura|Title=Referencias en la web|
 +
*http://docs.php.net/manual/es/features.cookies.php
 +
*http://docs.php.net/manual/es/function.setcookie.php
 +
*http://www.w3schools.com/php/php_cookies.asp
 +
*http://www.mclibre.org/consultar/php/lecciones/php_cookies.html
 +
Normativa: Directiva 2009/136/CE}}

Revisión de 05:42 17 nov 2014

Road Works.svg Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos.
Ver página de charlas.
Road Works.svg





DWES TituloTema5.png
las

Qué es una Cookie

  • Una cookie es una pequeña cantidad de datos almacenada por el navegador del usuario cuando solicita una página a un servidor.
  • Con esto podemos suplir la característica de que http es un protocolo sin estado (Insistir en que esto es una característica del protocolo, no una limitación.
  • Una Cookie es un fichero que se almacene en el cliente y guarda información de ese cliente en referencia a una determinada sitio web.
  • Como se guardan en el cliente, se necesita confirmación expresa del cliente para dejar que se almacenen cosas en su equipo
  • En general no se debe de abusar de ellas, máxime cuando muchos las pueden tener deshabilitadas y esto puede impedir que nuestra aplicación web se ejecute de forma eficiente o incluso correcta.
  • El servidor es quien solicita la creación del coockie en el cliente
  • El cliente crea un fichero con dicha información
  • Una vez creada, solo puede ser leída por el sitio web que la creó.
  • Para trabajar con cookies tenemos que hacer dos cosas
  • El tamaño máximo de un cookie está limitado a 4K.
  1. Alamacenar o crear la cookie
  2. Poder leerla en un momento determinado

Crear una coockie

  • Para ello usaremos la fucnión setCookie(...)
  • En esta función puede recibir hasta 7 parámetros, (sólo el primero es obligatorio).
http://es.php.net/manual/es/function.setcookie.php
  • Es habitual usar los tres primeros que serían
  1. Nombre de la cookie
  2. Valor que almacenamos en ella
  3. Tiempo de expiración: es un entero en segundos. Si no se especifica, la cookie termiará junto a esta sesión.
  • Por ejemplo si quieremos almacenar el usuario y que tenga un tiempo de duración de 1 hora
   setcookie("usuario", $_SERVER['PHP_AUTH_USER'], time()+3600);
  • Importante el envío de cookies al cliente ha de hacerse antes de que se escriba nada en html, igual que las funciones header.

Recuperar la cookie

  • El proceso de recuperación de la información que almacena una cookie es muy simple.
  • Cuando accedes a un sitio web, el navegador (cliente), le envía de forma automática todo el contenido de las cookies que almacene relativas a ese sitio en concreto (servidor).
  • Desde PHP se puede acceder a esta información por medio del array $_COOKIE.
  • Para recuperar los datos anteriores
$usuario = $_COOKIE['usuario'];

Borrar una cookie

  • Para borrar la cookie usamos la función setcookie con un tiempo negativo
<?php
// Ponemos un tiempo de expiración negativo
setcookie("user", "", time()-3600);
?>

}}


Icon activity.jpg

Actividad

  • En la página registro.php anterior, almacena en una cookie el último instante en que el cualquier usuario visitó la página.
  • Si es su primera visita, muestra un mensaje de bienvenida.
  • En caso contrario, muestra la fecha y hora de su anterior visita.
  • Deberás utilizar la función setcookie para guardar el instante de su anterior visita y mostrar su contenido utilizando el array $_COOKIE.






Icon summary.gif

Resumen