Sesiones y cookies

Aprende y colabora con lo que sepas sobre el manejo web, plataformas, lenguajes, MODs, Actualizaciones, Scripts, trucos, o lo que creas pueda ser de utilidad.
Seguidores: Alorse

Sesiones y cookies

Notapor Alorse » Vie Dic 10, 2010 5:34 pm

[img]http://www.elwebmaster.com/wp-content/uploads/2008/04/elefantito-fafafa_ok.jpg
[/img]
Vamos a ver que son las cookies y las sesiones.

Estos conceptos son clave para que los usuarios no pierdan información al cambiar de página o sección en un sitio.

¿Qué son las cookies?

Básicamente la definición dice: “Las Cookies son un mecanismo que sirve para almacenar datos en el navegador del usuario remoto, para así poder identificar al usuario cuando vuelva”.

La definición anterior seguro que les generó más dudas que lo que les ayudó, es por eso que se los voy a explicar con un ejemplo.

¿Vieron, cuando ingresan a su email en Hotmail o Yahoo!, que se les pregunta si desean recordar su contraseña? Bueno, eso lo que hace es generar una cookie que contenga su email y su contraseña en su propio navegador (se guarda en la computadora de ustedes).

De esta forma, cuando ustedes vuelven a abrir la página de Hotmail, el sitio busca si tienen almacenada alguna cookie identificada por este sitio y, si la encuentra y el email y la contraseña coinciden con la información que hotmail almacena en la base de datos, los redirecciona directamente a su bandeja de entrada.

Cualquier cookie enviada desde un navegador al sitio que estamos realizando, php la va a convertir en una variable, de la misma forma que ocurría con los métodos $_GET y $_POST.

¿Qué son las Sesiones?

Las sesiones por otro lado consisten en mecanismos para preservar ciertos datos a lo largo de un sitio, se puede guardar información y cambiar de página en página sin perder esa información (y sin necesidad de enviarla a través de ningún formulario, ni vía get, ni vía post), ya que la misma es guardada en el servidor con un identificador único de sesión (es único por cliente) y en el navegador del usuario (cliente) se guarda una cookie con la información de acceso a la sesión (el número de identificación de sesión).

De esta forma logramos mantener la información del usuario más segura ya que la misma se guarda en el servidor y no en la PC del usuario, y de esta forma evitamos que solo se pueda acceder a esa información desde nuestra aplicación.

Un caso muy común en el uso de sesiones es para un carrito de compras, ustedes en este tipo de sitios van eligiendo productos, y se van almacenando en una sesión, de esta forma pueden cambiar de sección en el sitio sin perder la información.

Por ejemplo en un “supermercado online” pueden cambiar de la seccion “almacén” a “productos congelados” y su carrito de compras apesar de recargar una nueva página continúa con los productos seleccionados.

Las sesiones por lo general se acceden más rápido que las cookies, ya que toda la información al ser almacenada en el servidor, no hay que estar enviándola del cliente al servidor en forma constante.

Ya me imagino la siguiente pregunta:
¿Para qué usar Cookies si con las Sesiones se logra practicamente lo mismo de forma más rapida y más segura?

El problema que tienen las sesiones es que tienen un tiempo de expiración que no puede ser modificado desde la creación de la misma, hay que modificarlo desde la configuración de php.

Lo malo de esto es que todas las sesiones duraran el mismo tiempo, a diferencia de las cookies que el tiempo de vida de la misma se configura al momento de crearla.

Por otro lado, si se desea usar sesiones hay que inicializarlas antes de empezar a realizar cualquier otra cosa en php y si a una página no se le avisó que empiece a hacer uso de sesiones, las mismas no van a correr, por lo que la aplicación web no va a poder acceder a la información de la misma, a diferencia de las cookies, donde no hay que avisar nada, si existe la cookie, se lee y santo remedio.
Linux user number #507147
Avatar de Usuario
Alorse
Fundador
Fundador
 
Mensajes: 320
Registrado: Mar Jul 21, 2009 12:20 pm
Ubicación: Colombia
    Ubuntu Mozilla


Volver a Zona Webmaster




¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado