Está en la página 1de 8

Las cookies son pequeños archivos de texto que nuestra página puede

almacenar en el disco duro de los visitantes, y recuperar cuando


vuelvan a visitarla.

En PHP las cookies se controlan por medio de una función, que nos
sirve para generarlas y guardarlas en el navegador del usuario. Es la
función setcookie(), que recibe varios parámetros, entre ellos, el
nombre de la cookie, el valor y la caducidad. El único parámetro
obligatorio es el primero, el nombre de la cookie, los demás son
opcionales.
setcookie(Nombre, Valor, Tiempo_Vida);
Nombre
Un string con el nombre que queremos darle a la cookie a guardar.
Puede ser cualquiera que deseemos.

Valor
Una cadena de caracteres que es el valor que va a tener la cookie.

Caducidad
Es un timestamp con el valor de la fecha en la que caducará la cookie.
Lo normal es utilizar la función time(), que genera el timestamp actual y
sumarle el número de segundos que deseemos que dure la cookie. Por
ejemplo, time() + (60 * 60 * 24 * 365) haría que la cookie durase un año
en el sistema del usuario.

// Esta cookie dura una hora. 1 hora = 3600 segundos


setcookie("visitas", "1", time() + 3600);
Recuperar el valor de una cookie.
Podemos recuperar las cookies con
$_COOKIE['nombre_cookie']. Se trata de un array autoglobal,
accesible desde cualquier parte del script. Este es el método
recomendado.

<?php
echo $_COOKIE['saludo'];
?>

Donde se almacenan las cookies.


Firefox Windows XP. Esta carpeta está en C:\Documents and
Settings\[usuario]\Datos de programa\Mozilla\Firefox\Profiles. Un
sólo fichero almacena todas las cookies.
Internet Explorer Windows XP. C:\Documents and Settings\
[usuario]\Cookies
Ejemplo.
<?php
if (isset($_COOKIE["nombre"])) {
echo "Hola " . $_COOKIE["nombre"];
}
else {
setcookie("nombre", “Jose Luis");
echo "Registrando";
}
?>
Las sesiones, en aplicaciones web realizadas con PHP y
en el desarrollo de páginas web en general, nos sirven para
almacenar información que se memorizará durante toda la
visita de un usuario a una página web. Dicho de otra forma,
un usuario puede ver varias páginas durante su paso por
un sitio web y con sesiones podemos almacenar variables
que podremos acceder en cualquiera de esas páginas.
session_start ()
Inicia una sesión para el usuario o continúa la sesión que pudiera tener abierta
en otras páginas. Al hacer session_start() PHP internamente recibe el
identificador de sesión almacenado en la cookie o el que se envíe a través de
la URL. Si no existe tal identificador se sesión, simplemente lo crea.

La sesión se tiene que inicializar antes de escribir cualquier texto en la página.


Esto es importante y de no hacerlo así corremos el riesgo de recibir un error,
porque al iniciar la sesión se deben leer las cookies del usuario, algo que no se
puede hacer si ya se han enviado las cabeceras del HTTP.

Una vez inicializada la sesión con session_start() podemos a partir de ahora


utilizar variables de sesión, es decir, almacenar datos para ese usuario, que se
conserven durante toda su visita o recuperar datos almacenados en páginas
que haya podido visitar. Esto se hace a través del array asociativo $_SESSION
de la siguiente forma.

$_SESSION["nombre_de_variable"]
session_id ()
Nos devuelve el identificador de la sesión.

Inicializar (o reiniciar) una sesión:


<?php
session_start();
echo ‘He inicializado la sesión cuyo id es’. session_id();
?>
Añadir una variable a la sesión actual:
<?
session_start();
$_SESSION[‘usuario’] = “Felipe”;
?>
Consultar si una variable ha sido añadida a la sesión actual:
<?
session_start();
if ( isset($_SESSION [‘usuario’] ) ) {
echo "El nombre es “. $_SESSION [‘usuario’];
}
else {
echo "Error:: no existe la variable name en la sesión!”;
}
?>
session_destroy()
Da por terminada la sesión eliminando variables e identificador.

Finalizar la sesión actual:


<?
session_start();
sesion_destroy();
header(‘location: index.php’);
?>

La función: header(“location: fichero.php") permite redireccionar la


página actual hacia la página indicada en el location: fichero.php
no se puede hacer ningún echo antes de la instrucción header

Donde se almacenan las Sesiones.


Esta definido en el archivo php.ini
session.save_path

También podría gustarte