Ver Mensaje Individual
  #11 (permalink)  
Antiguo 27/01/2011, 18:04
Avatar de Nazari
Nazari
 
Fecha de Ingreso: febrero-2010
Ubicación: Canarias - Tenerife
Mensajes: 62
Antigüedad: 14 años, 2 meses
Puntos: 7
Respuesta: Creando un CMS

Usando Cookies y Sesiones

Todos los sistemas de gestión de contenidos y muchos portales usan sistemas de usuarios, tu entras te logueas con los datos que te pidan, que suelen ser un nick o un email y una contraseña, y desde ese momento el portal te reconoce siempre aunque estés viendo otra sección de la web, pero ¿Como es posible que te reconozca sin enviar continuamente los datos?, muy sencillo, usando Sesiones y cookies.

Las Sesiones son variables que se almacenan en el servidor (no están al alcance del usuario) y son únicas por cada usuario que accede a la web, por ejemplo el nombre de mi sesión no seria igual al de otro visitante.
Aunque su uso depende de nuestra imaginación normalmente se utilizan para pasar datos de una forma segura y transparente de una sección a otra, como por ejemplo un carrito de compra, las sesiones son la forma mas segura de crear un sistema de ‘logueo‘ de usuarios, una ves abierta una sesión se mantendrá hasta que la destruyamos, su uso es muy simple, usamos session_start(); en el script donde queramos usar sesiones, para definir una variable es tan sencillo como poner $_SESSION['mivariable'] = 0; hay que tener en cuenta que esto es en PHP 5.3, en versiones anteriores, antes de dar valor a una sesión había que registrarla así, session_register(‘mivariable’); y luego darle el valor, pero esta forma quedo descartada y pronto quedara obsoleta en versiones posteriores de PHP. Una ves hemos terminado con el uso de las sesion con session_destroy(); las destruimos, se puede usar para hacer ‘Logout‘ del sistema.

Las Cookies son otra forma de guardar datos y recuperarlos de una sección a otra, pero son menos seguras que las sesiones.
¿Por que? Las cookies son pequeños archivos de texto que se almacenan en el navegador, por lo tanto están al alcance de los usuarios y pueden ser modificadas, esto hace que sea mejor no guardar información sensible en ellas, como contraseñas sin encriptar o otros datos personales.
Las cookies tienen un tiempo de vida y normalmente se usan junto con las sesiones para crear sistemas rápidos y cómodos, evitando tener que introducir continuamente nuestros datos. Su uso en PHP es muy simple usando la función setcookie(); la cual permite definir, nombre, valor, caducidad, directorio, dominio y seguridad.
El nombre como puedes imaginar es para darle un nombre a la cookie, valor define el valor que tendrá, caducidad el tiempo de validez de la cookie creada, directorio la ruta relativa desde la que podemos recuperar la cookie, dominio se refiere al dominio que puede recuperarla y seguridad define si la cookie puede ser mandar si no hay una conexión https (segura). Puede que parezca complicado pero no es tanto, muchos de los parámetros se definen por defecto.

Ahora que sabemos que son las cookies y las sesiones, montaremos nuestro propio sistema de logueo, con un ejemplo se entienden mejor los conceptos, pero esto sera en la siguiente entrada que hoy ya se me ha hecho algo tarde jaja.

Un Saludo
__________________
Nazarí González
http://www.nazariglez.com - @Nazariglez