Entendido.

Este sitio utiliza cookies para analizar la navegación. Si continúa navegando se entiende que acepta su uso. Ver más detalles.";

Logo

Aprende Web

Crea y diseña tus sitios en la Web.

Manual de PHP

PHP: imprescindible para crear páginas web de modo profesional


Y ahora tambien aprende a programar en C++ con Aprende Web C++

logo rss RSS. Suscribir canal.

Buscar en Aprende Web

Traducir página

Visita nuestro blog:

bolg.aprende-web.net

y entérate de las novedades o deja un comentario.

Dudas y sugerencias:

aprendeweb@aprende-web.net





Sobre ésta página

Ültima modificación: 29-01-2016.

Visitas este mes: 120

Visitas el mes pasado: 123

logo
WEB-GRAFÍA

Mi agradecimiento a los siguientes sitios en los que me he basado para la elaboración de este manual.:

Curso de PHP
www.programaciónweb.net
Lecciones PHP
WebTaller.com
Manual de PHP
manualdephp.com
Curso de PHP
Aula Fácil.com
Manual de PHP en español
manual-php.com
PHP a fondo
desarrolloweb.com
Manual de PHP
Foros del Web
Manual de PHP
www.php.net
PHP Tutorial
w3schools.com

Donativos

Si este sitio te parece interesante puedes contribuir con una pequeña aportación.




16. Resumen(VIII)

16.8 Cookies y Sesiones

php

Introducción

Estas son dos formas de disponer de datos y variables en todo el sitio web. El ámbito de las variables es la página, por lo que al cambiar de página (dentro del mismo sitio), las variables que tenemos desaparecen. Tanto cookies como variables solucionan este problema, si bien de forma diferente.

Cookies

Concepto

Una cookie es un archivo que se crea automáticamente para poder guardar un dato o una variable. Una vez creado para utilizarlo en otra página no tenemos más que abrirlo en esa otra página.

Sin embargo las cookies tienen una serie de características que restringen bastante su uso:

Insertar cookies

Para crear nuevas cookies utilizamos la función set_cookie(). Esta debe ponerse al principio de la página, incluso antes de la etiqueta !DOCTYPE. Esta función tiene varios argumentos, sólo el primero es obligatorio, pero para que la cookie funcione debemos incluir los tres primeros:

set_cookie($nombre,$valor,$caducidad);

En cada uno de estos argumentos pondremos lo siguiente:

Para indicar la fecha de caducidad lo normal es crearla a partir de la fecha actual (funcion time()), a la que se le suma el tiempo que queremos que esté activa. Ejemplo de cookie:

set_cookie("saludo","Hola mundo",time()+3600*24*30);

La cookie de este ejemplo tiene como nombre "saludo", como valor "Hola mundo" y como caducidad 30 días (3600*24*30 = segundos que tiene un mes).

Podemos además añadir otros argumentos a la función que crea la cookie, aunque no suelen utilizarse mucho debemos conocerlos:

Acceso a cookies

Para poder acceder a una cookie desde cualquier página en la que esté disponible lo haremos mediante el array interno $_COOKIE. Desde ahí con el nombre de la cookie accedemos a su valor.

Por ejemplo si hemos guardado esta cookie:

set_cookie("saludo","Hola mundo",time()+3600*24*30);

Para poder ver el dato en pantalla en otra página en la que esté disponible escribiremos:

echo $_COOKIE['saludo'];

Borrar cookies

Una cookie se borra automáticamente al alcanzar la fecha de caducidad, o al reescribirla de nuevo, en este último caso es remplazada por la nueva cookie.

También podemos borrarla explícitamente, para ello la volvemos a reescribir mediante set_cookie(), pero poniendo sólo el primer argumento, es decir, el nombre:

set_cookie('saludo');

Borramos aquí la cookie que hemos usado en ejemplos anteriores.

Sesiones

Concepto

Una sesión es el recorrido que hace un usuario por un sitio web, desde que entra hasta que sale, es decir todas las páginas que recorre en el sitio.

Las variables normalmente expiran al cerrar cada página, sin embargo en PHP se pueden crear variables de sesión, que estén disponibles en todas las páginas.

Para ello debemos primero crear una sesión, y después las variables de sesión.

Las sesiones se utilizan para crear cuentas o sesiones de usuario, páginas de compras, etc.

Las variables estarán disponibles en todas las páginas de la sesión hasta que ésta se cierre. Al cerrar la sesión éstas se pierden. Su utilidad está en poder disponer de ellas en distintas páginas mientras que el usuario navega por nuestro sitio. Para guardarlas de forma permanente utilizaremos otros métodos (cookies, archivos o bases de datos).

Iniciar sesión.

Para iniciar una sesión debemos utilizar la siguiente función:

session_start();

Esta función debe escribirse al principio de la página, antes de cualquier script, antes de la etiqueta !DOCTYPE y antes incluso de cualquier otra sentencia en PHP como pueden ser la función header() o set_cookie() vistas anteriormente.

La función session_start() no tiene argumentos. Todas las páginas en las que utilicemos variables de sesión deben llevar esta función al principio.

La función session_start() busca si el usuario tiene abierta una sesión, y entra en ella, si no la tiene abierta la crea y le da un identificador, que será distinto para cada usuario. Puede, por tanto haber varios usuarios viendo la página al mismo tiempo, y cada uno de ellos tendrá una sesión distinta.

Variables de sesión

En todas las páginas identificadas como de la sesión (con la función session_start()) hay disponible el array interno $_SESSION, con el que podemos guardar o mostrar las variables de sesión.

Para crear una variable de sesión creamos un nuevo elemento de este array:

$_SESSION['saludo']="Hola mundo.";

Si queremos pasar una variable de la página lo haremos:

$_SESSION['nombre']=$nombre;

Para poder ver o utilizar la variable en otra página de la sesión buscamos el elemento del array:

echo $_SESSION['saludo'];

$nombre = $_SESSION['nombre'];

Manejar sesiones y variables.

Las funciones isset() y unset() permiten respectivamente comprobar si una variable existe, y eliminar la variable. Podemos aplicarlas también a las variables de sesión.

$comprobar=isset($_SESSION['nombre']);

Devuelve un valor booleano (true, false), por lo que comprueba si la variable ha sido creada.

unset($_SESSION['saludo']);

Elimina esta variable de sesión.

Si queremos eliminar todas las variables de sesión utilizaremos la función:

session_unset();

Esta función no tiene argumentos, elimina y libera el espacio que ocupan todas las variables de sesión.

Si queremos eliminar todos los datos referentes a la sesión, utilizaremos la función:

session_destroy();

Elimina la sesión en sí con todos sus datos, pero no elimina las cookies asociadas.

Otras variables de sesión

Otras variables nos permiten ver información sobre la sesión o cambiar sus datos;




En la siguiente página veremos cómo manejar archivos en PHP, lo cual resulta muy útil para guardar datos de forma permanente.

Manejar archivos.



manual de PHP

Anterior siguiente ... Siguiente siguiente


imprimir esta página

Página creada por ANYELGUTI.

Sugerencias: aprendeweb@aprende-web.net. Envia un manda un correo

Visita nuestro blog par saber en qué estamos trabajando: Aprende Web Blog

Más sobre anyelguti en http://anyelguti.16mb.com