Home
Username:
Password:
PHP Project Solutions (Español) Tutorials

Sesiones y Variables PHP/Conectores/SQL / Sesiones y Variables pt. 4

Subtitles of the Movie

Ahora voy a hablar un poco m‡s acerca de las sesiones. Ya he hablado acerca de c—mo comenzar una sesi—n en PHP. Con las aplicaciones "web" va a necesitar las sesiones para mantener el estado, as’ que definitivamente las debe utilizar. ÀQuŽ es un estado? Bueno, estado b‡sicamente significa la situaci—n de todas las variables y todo el proceso que sufre la aplicaci—n "web", una vez se ha iniciado, cuando alguien ha comenzado a usarla. Se denomina HTTP a un protocolo sin estado. Ahora,como usted recordar‡, Žste es el protocolo de comunicaci—n para las aplicaciones "web", as’ que si no tiene estado, eso significa que no rastrea nada de solicitud a solicitud. Asi que si alguien explora su sitio y luego explora otra p‡gina, entonces su servidor y su aplicaci—n "web", no tendr‡n la manera de rastrearlo, as’ que debe agregar la habilidad para rastrear a quien est‡ en su sitio, el lugar en donde ha hecho clic, lo que ha procesado y la clase de informaci—n que ha enviado. La manera para hacer eso es con la identificaci—n de la sesi—n. PHP autom‡ticamente crea una identificaci—n de sesi—n, al iniciar una sesi—n. Una cosa que deber’a saber, si inicia una sesi—n con "session start", aœn no hay sesi—n É. est‡ listo, es que no habr‡ sesi—n hasta que cree y registre una variable. As’ que he puesto "session start" barra igual "started". Entonces podrŽ usarla para verificar cualquier p‡gina, as’ el usuario haya o no iniciado una sesi—n. Una vez, haya creado la variable y la haya inicializado tengo que registrarla en una sesi—n. Una vez hecho eso, PHP mantiene sesiones, bien con "cookies" o bien con el valor de una cadena "query" o consulta. Ahora autom‡ticamente enviar‡ una "cookie", mientras se puedan enviar - como sabe, si usted observa el navegador, hay configuraciones con las que puede desactivar las "cookies", y si est‡n desactivadas, PHP lo notar‡, y enviar‡ la identificaci—n de la sesi—n mediante una cadena "query". Lo que esto significa es, que la identificaci—n de la sesi—n ser‡ parte de cada enlace de la p‡gina sobre la cual est‡ el usuario. As’ cuando haga clic en el enlace, autom‡ticamente enviar‡n su identificaci—n de sesi—n actual. La œnica desventaja de esto, es que todas las identificaciones de sesion regresaran de ahora en adelante en forma de 'Plain text' y podr’an ser raptadas. Si quiere que la sesi—n sea segura, saque un certificado de seguridad, y ejecute un SSH, como dice aqu’. Hay algunas notas aqu’ abajo que hablan sobre el particular. Lo que voy a hacer en Žsta p‡gina, b‡sicamente es mostar que predeterminadamente, las sesiones se ejecutan sobre las "cookies". Si desactiva las "cookies" en el navegador, entonces ver‡ que la ejecuci—n de sesiones se hace mediante una cadena query. Pero una vez que haya iniciado una sesi—n, usando "cookies", no puede desactivarlas y esperar a que, la aplicaci—n "web" se de cuenta autom‡ticamente de que usted se ha ido, y termine la sesi—n. Al regresar, notar‡ que las "cookies" est‡n desactivadas y que PHP comenzar‡ a usar las cadenas query . El c—digo que estoy usando es la l’nea est‡ndar para verificar si el formulario ha sido enviado o no y luego voy a buscar el largo de la cadena de la "cookie", la cual es una variable global; recuerde la estructura de datos de la "cookie", y la identificaci—n de la sesi—n de PHP, esa parte del arreglo; asegurese de que tenga 32 caracteres de longitud. Si es as’, enviarŽ un mensaje que dice "the session id is being maintained in a cookie" (la identificaci—n de la sesi—n se mantiene en una "cookie"), y cualquiera que sea su valor, cambiar‡ cada vez que la sesi—n cambie. Si no, ser‡ mantenida en la cadena query, y aœn podrŽ obtener la identificaci—n de la sesi—n a partir de "globals". TambiŽn tengo un enlace por aqu’ que puedo ver en la barra de direcci—n. Si "cookies" est‡ desactivado y est‡ ejecutando una sesi—n, la cadena query, habr‡ sido agregada a cada enlace sin necesidad de que haga algo al respecto. As’ que miremos c—mo trabaja en Žste momento. Aqu’ tengo la p‡gina, la he cargado en el sitio y como puede ver se est‡ ejecutando una sesi—n pero no hay nada en la barra de estado en esa URL para el enlace, que me muestre alguna clase de identificaci—n de sesi—n. Si hago click en "check sessions" observe que se ha mantenido como un "cookie" y Žste es su nœmero. Ok, ahora, si voy a "Internet Options" > "Privacy", en "Advanced", voy a seleccionar "override automatic cookie handling" (inhabilitar manejo autom‡tico de las "cookies"), en el "Internet Explorer", voy a "block" para bloquear todas las "cookies", Asi que ahora que he cerrado el explorador, puedo regresar a Žl, y regresar a la misma p‡gina. Como puede ver, a medida que coloco el cursor sobre el enlace all’, aparece la variable de la cadena "query", llamada PHP "session id", y est‡ configurada segœn el nœmero de identificaci—n de sesi—n PHP. Si presiono "check sessions", puedo ver ahora que se mantiene la cadena "query", y por supuesto all’ estar‡ la nueva identificaci—n de sesi—n. As’ es b‡sicamente como trabaja, autom‡ticamente cambiar‡ pero tiene una peque–a dependencia, si la persona acepta "cookies" cuando inicia o no la sesi—n.

Tutorial Information

Course: PHP Project Solutions (Español)
Author: Dave Mercer
SKU: 33619
ISBN: 1-932808-63-9
Release Date: 2005-06-03
Duration: 6.5 hrs / 87 lessons
Work Files: Yes
Captions: Available on CD and Online University
Compatibility: Vista/XP/2000, OS X, Linux
QuickTime 7, Flash 8

VTC Sign up & Benefits

  • Unlimited Access
  • 98,729 Video Tutorials (23,265 free)
  • Video Available as Flash or QuickTime
  • Over 1026 Courses
  • $30 for One Month Access
  • Multi-User Discounts Available