Usos Estado-permitidos que se convierten con PHP
| by John L | November 07, 2004
Instalación 1
Usos Estado-permitidos que se convierten con PHP
Cuando un usuario está hojeando con un Web site y está practicando surf a partir de un Web page a otro, el Web site necesita a veces recordar las acciones (e.g. opciones) realizadas por el usuario. Por ejemplo, en un Web site que venda DVDs, el usuario hojea típicamente a través de una lista de DVDs y selecciona DVDs individual para el cheque hacia fuera en el final de la sesión de las compras. El Web site necesita recordar qué DVDs ha seleccionado el usuario porque los artículos seleccionados necesitan ser presentados otra vez al usuario cuando el usuario comprueba hacia fuera. Es decir el Web site necesita recordar el estado - es decir los artículos seleccionados - de las actividades el hojear del usuario.
Sin embargo, el HTTP es un protocolo apátrida y es mal equipado manejar estados. Un Web site estándar del HTML proporciona básicamente la información al usuario y una serie de acoplamientos que dirija simplemente a usuario a otros Web pages relacionados. Esta naturaleza apátrida del HTTP permite que el Web site sea replegado a través de muchos servidores para los propósitos que balancean de la carga. Una desventaja importante es que mientras que hojea a partir de una página a otra, el Web site no recuerda el estado de la sesión el hojear. Esta interactividad de la marca casi imposible.
Para aumentar interactividad, el revelador puede utilizar la sesión que maneja características de PHP para aumentar las características del HTTP para recordar el estado de la sesión el hojear. Son básicamente 2 maneras que PHP hace esto:
• Usar las galletas
• Usar sesiones
La instalación siguiente discute cómo manejar sesiones usando las galletas…
Instalación 2
Galletas
Las galletas se utilizan para almacenar la Estado-información en el browser. Los Browsers se permiten continuar a 20 galletas para cada dominio y los valores almacenados en la galleta no pueden exceder 4 KB. Si más de 20 galletas son creadas por el Web site, sólo se almacenan 20 más finales de. Las galletas son solamente convenientes en los casos que no requieren comunicaciones complejas de la sesión y no son favorecidas por algunos reveladores debido a ediciones de la aislamiento. Además, algunos usuarios inhabilitan la ayuda para las galletas en sus browsers.
Lo que sigue es una secuencia de evento típica del servidor-browser que ocurren cuando se utiliza una galleta:
• El servidor sabe que necesita recordar el estado de hojear la sesión
• El servidor crea una galleta y utiliza el campo del jefe de la Fijar-Galleta en la respuesta del HTTP para pasar la galleta al browser
• El browser lee el campo de la galleta en la respuesta del HTTP y almacena la galleta
• Esta información de la galleta se pasa a lo largo de las comunicaciones futuras del browser-servidor y se puede utilizar en las escrituras de PHP como variable
PHP proporciona una función llamada setcookie () para permitir la creación fácil de galletas. El sintaxis para el setcookie es:
setcookie interno (nombre de la secuencia, [secuencia val], [expiration_date interno], [trayectoria de la secuencia], dominio de la secuencia, [interno asegurar])
Los parámetros son:
• nombre - esto es un parámetro obligatorio y se utiliza posteriormente identificar la galleta
• el valor - el valor de la galleta - e.g. si la galleta se utiliza para almacenar el nombre del usuario, el parámetro del valor almacenará el nombre real - e.g. Juan
• expiration_date - el curso de la vida de la galleta. Después de esta fecha, la galleta expira y es inutilizable
• trayectoria - la trayectoria refiere al URL de el cual la galleta es válida y permitió
• el dominio - del dominio creado la galleta y se permite leer el contenido de la galleta
• - especifica si la galleta se puede enviar solamente a través de una conexión segura - e.g. el SSL seguro permite sesiones
Lo que sigue es un ejemplo que exhibe al usuario cuántas veces un Web page específico se ha exhibido al usuario. El copy el código abajo (el php y el HTML) en un archivo con la extensión de .php y la prueba hacia fuera. ¿[? ¡php//check si la variable de $count se ha asociado al cookieif de la cuenta (! isset ($count)) {$count = 0;} {$count++;}setcookie (“cuenta”, $count, tiempo () +600,”/“, "", 0);?][HTML] [cabeza] [título] sesión que dirige con las galletas [/title] [/head] [cuerpo] se ha exhibido esta página: ¿[? =$count?] épocas. [/body] [/html]
La instalación siguiente discute cómo manejar sesiones usando la sesión de PHP que maneja funciones con las galletas permitidas…
Instalación 3
Dirección de la sesión de PHP - galletas permitidas
En vez de almacenar la información de la sesión en el browser con el uso de galletas, la información se puede en lugar de otro almacenar en el servidor en archivos de la sesión. Un archivo de la sesión se crea y se mantiene para cada sesión del usuario. Por ejemplo, si hay tres usuarios concurrentes que hojean el Web site, tres archivos de la sesión serán creados y mantenidos - uno para cada usuario. Se suprimen los archivos de la sesión si la sesión es cerrada explícitamente por la escritura de PHP o por un proceso de la colección de la basura del demonio proporcionado por PHP. La buena práctica de programación llamaría para que las sesiones sean cerradas explícitamente en la escritura.
Lo que sigue es una secuencia de evento típica del servidor-browser que ocurren cuando se utiliza una dirección de la sesión de PHP:
• El servidor sabe que necesita recordar el estado de hojear la sesión
• PHP genera una identificación del sssion y crea un archivo de la sesión para almacenar la información futura según los requisitos de las páginas subsecuentes
• Una galleta es wih generado la identificación de la sesión en el browser
• Esta galleta que almacena la identificación de la sesión se envía transparente y automáticamente al servidor para todas las peticiones subsecuentes al servidor
El ejemplo de sesión-dirección siguiente de PHP logra el mismo resultado que el ejemplo anterior de la galleta. El copy el código abajo (el php y el HTML) en un archivo con la extensión de .php y la prueba hacia fuera.
¿[? php//starts un sessionsession_start (); ¡//informs PHP que cuenta la información necesita ser recordado en el fileif de la sesión (! session_is_registered (“cuenta”)) {session_register (“cuenta”); $count = 0;}{$count++;}$session_id = session_id ();?][HTML] [cabeza] [título] dirección de la sesión de PHP - Galleta-Permitida [/title] [/head] [cuerpo] la identificación actual de la sesión es: ¿[? =$session_id?] Se ha exhibido esta página: ¿[? =$count?] épocas. [/body] [/html]
Un resumen de las funciones que PHP proporciona para la dirección de la sesión es:
• start_session boleano () - inicializa una sesión
• encadenar el session_id ([identificación de la secuencia]) - vuelve la identificación actual de la sesión o especifica la identificación de la sesión que se utilizará cuando se crea la sesión
• session_register boleano (nombre mezclado [, mezclado…]) - variables de los registros que se almacenarán en el archivo de la sesión. Cada parámetro pasado en la función es una variable separada
• boleano session_is_registered (variable_name de la secuencia) - los cheques si una variable se ha colocado previamente para ser almacenada en el archivo de la sesión
• session_unregister (varriable_name) de la secuencia - unregisters una variable del archivo de la sesión. Las variables sin registrar son no más válidas para la referencia en la sesión.
• session_unset () - unsets todas las variables de la sesión. Es importante observar que todas las variables siguen colocadas.
• session_destroy boleano () - destruye la sesión. Éste es contrario de la función del start_session.
La instalación siguiente discute cómo manejar sesiones usando la sesión de PHP que maneja funciones cuando las galletas son lisiadas…
Instalación 4
Dirección de la sesión de PHP - sin las galletas
Si las galletas son lisiadas en el browser, el ejemplo antedicho no puede trabajar. El es porque aunque el archivo de la sesión que almacena todas las variables se guarda en el servidor, una galleta todavía se necesita en el browser para almacenar la identificación de la sesión que se utiliza para identificar la sesión y su archivo asociado de la sesión. La manera más común alrededor de esto sería pasar explícitamente la identificación de la sesión de nuevo al servidor del browser como parámetro de la pregunta en el URL.
Por ejemplo, la escritura de PHP genera las peticiones subsecuentes a la llamada del start_session en el formato siguiente:
http://www.yourhost.com/yourphpfile.php?PHPSESSID= [identificación real de la sesión]
Los siguientes son los extractos que ilustran la discusión:
Manualmente construcción del URL:
$url = “http://www.yoursite.com/yourphppage.php?PHPSESSID=”. session_id ();
¿[un href= " [? =$url?]“] Texto del ancla [/a]
Construcción del URL usando a SID:
¿[un href= " http://www.yoursite.com/yourphppage.php? ¿[? =SID?]“] Texto del ancla [/a]
Usos Estado-permitidos que se convierten con PHP
Cuando un usuario está hojeando con un Web site y está practicando surf a partir de un Web page a otro, el Web site necesita a veces recordar las acciones (e.g. opciones) realizadas por el usuario. Por ejemplo, en un Web site que venda DVDs, el usuario hojea típicamente a través de una lista de DVDs y selecciona DVDs individual para el cheque hacia fuera en el final de la sesión de las compras. El Web site necesita recordar qué DVDs ha seleccionado el usuario porque los artículos seleccionados necesitan ser presentados otra vez al usuario cuando el usuario comprueba hacia fuera. Es decir el Web site necesita recordar el estado - es decir los artículos seleccionados - de las actividades el hojear del usuario.
Sin embargo, el HTTP es un protocolo apátrida y es mal equipado manejar estados. Un Web site estándar del HTML proporciona básicamente la información al usuario y una serie de acoplamientos que dirija simplemente a usuario a otros Web pages relacionados. Esta naturaleza apátrida del HTTP permite que el Web site sea replegado a través de muchos servidores para los propósitos que balancean de la carga. Una desventaja importante es que mientras que hojea a partir de una página a otra, el Web site no recuerda el estado de la sesión el hojear. Esta interactividad de la marca casi imposible.
Para aumentar interactividad, el revelador puede utilizar la sesión que maneja características de PHP para aumentar las características del HTTP para recordar el estado de la sesión el hojear. Son básicamente 2 maneras que PHP hace esto:
• Usar las galletas
• Usar sesiones
La instalación siguiente discute cómo manejar sesiones usando las galletas…
Instalación 2
Galletas
Las galletas se utilizan para almacenar la Estado-información en el browser. Los Browsers se permiten continuar a 20 galletas para cada dominio y los valores almacenados en la galleta no pueden exceder 4 KB. Si más de 20 galletas son creadas por el Web site, sólo se almacenan 20 más finales de. Las galletas son solamente convenientes en los casos que no requieren comunicaciones complejas de la sesión y no son favorecidas por algunos reveladores debido a ediciones de la aislamiento. Además, algunos usuarios inhabilitan la ayuda para las galletas en sus browsers.
Lo que sigue es una secuencia de evento típica del servidor-browser que ocurren cuando se utiliza una galleta:
• El servidor sabe que necesita recordar el estado de hojear la sesión
• El servidor crea una galleta y utiliza el campo del jefe de la Fijar-Galleta en la respuesta del HTTP para pasar la galleta al browser
• El browser lee el campo de la galleta en la respuesta del HTTP y almacena la galleta
• Esta información de la galleta se pasa a lo largo de las comunicaciones futuras del browser-servidor y se puede utilizar en las escrituras de PHP como variable
PHP proporciona una función llamada setcookie () para permitir la creación fácil de galletas. El sintaxis para el setcookie es:
setcookie interno (nombre de la secuencia, [secuencia val], [expiration_date interno], [trayectoria de la secuencia], dominio de la secuencia, [interno asegurar])
Los parámetros son:
• nombre - esto es un parámetro obligatorio y se utiliza posteriormente identificar la galleta
• el valor - el valor de la galleta - e.g. si la galleta se utiliza para almacenar el nombre del usuario, el parámetro del valor almacenará el nombre real - e.g. Juan
• expiration_date - el curso de la vida de la galleta. Después de esta fecha, la galleta expira y es inutilizable
• trayectoria - la trayectoria refiere al URL de el cual la galleta es válida y permitió
• el dominio - del dominio creado la galleta y se permite leer el contenido de la galleta
• - especifica si la galleta se puede enviar solamente a través de una conexión segura - e.g. el SSL seguro permite sesiones
Lo que sigue es un ejemplo que exhibe al usuario cuántas veces un Web page específico se ha exhibido al usuario. El copy el código abajo (el php y el HTML) en un archivo con la extensión de .php y la prueba hacia fuera. ¿[? ¡php//check si la variable de $count se ha asociado al cookieif de la cuenta (! isset ($count)) {$count = 0;} {$count++;}setcookie (“cuenta”, $count, tiempo () +600,”/“, "", 0);?][HTML] [cabeza] [título] sesión que dirige con las galletas [/title] [/head] [cuerpo] se ha exhibido esta página: ¿[? =$count?] épocas. [/body] [/html]
La instalación siguiente discute cómo manejar sesiones usando la sesión de PHP que maneja funciones con las galletas permitidas…
Instalación 3
Dirección de la sesión de PHP - galletas permitidas
En vez de almacenar la información de la sesión en el browser con el uso de galletas, la información se puede en lugar de otro almacenar en el servidor en archivos de la sesión. Un archivo de la sesión se crea y se mantiene para cada sesión del usuario. Por ejemplo, si hay tres usuarios concurrentes que hojean el Web site, tres archivos de la sesión serán creados y mantenidos - uno para cada usuario. Se suprimen los archivos de la sesión si la sesión es cerrada explícitamente por la escritura de PHP o por un proceso de la colección de la basura del demonio proporcionado por PHP. La buena práctica de programación llamaría para que las sesiones sean cerradas explícitamente en la escritura.
Lo que sigue es una secuencia de evento típica del servidor-browser que ocurren cuando se utiliza una dirección de la sesión de PHP:
• El servidor sabe que necesita recordar el estado de hojear la sesión
• PHP genera una identificación del sssion y crea un archivo de la sesión para almacenar la información futura según los requisitos de las páginas subsecuentes
• Una galleta es wih generado la identificación de la sesión en el browser
• Esta galleta que almacena la identificación de la sesión se envía transparente y automáticamente al servidor para todas las peticiones subsecuentes al servidor
El ejemplo de sesión-dirección siguiente de PHP logra el mismo resultado que el ejemplo anterior de la galleta. El copy el código abajo (el php y el HTML) en un archivo con la extensión de .php y la prueba hacia fuera.
¿[? php//starts un sessionsession_start (); ¡//informs PHP que cuenta la información necesita ser recordado en el fileif de la sesión (! session_is_registered (“cuenta”)) {session_register (“cuenta”); $count = 0;}{$count++;}$session_id = session_id ();?][HTML] [cabeza] [título] dirección de la sesión de PHP - Galleta-Permitida [/title] [/head] [cuerpo] la identificación actual de la sesión es: ¿[? =$session_id?] Se ha exhibido esta página: ¿[? =$count?] épocas. [/body] [/html]
Un resumen de las funciones que PHP proporciona para la dirección de la sesión es:
• start_session boleano () - inicializa una sesión
• encadenar el session_id ([identificación de la secuencia]) - vuelve la identificación actual de la sesión o especifica la identificación de la sesión que se utilizará cuando se crea la sesión
• session_register boleano (nombre mezclado [, mezclado…]) - variables de los registros que se almacenarán en el archivo de la sesión. Cada parámetro pasado en la función es una variable separada
• boleano session_is_registered (variable_name de la secuencia) - los cheques si una variable se ha colocado previamente para ser almacenada en el archivo de la sesión
• session_unregister (varriable_name) de la secuencia - unregisters una variable del archivo de la sesión. Las variables sin registrar son no más válidas para la referencia en la sesión.
• session_unset () - unsets todas las variables de la sesión. Es importante observar que todas las variables siguen colocadas.
• session_destroy boleano () - destruye la sesión. Éste es contrario de la función del start_session.
La instalación siguiente discute cómo manejar sesiones usando la sesión de PHP que maneja funciones cuando las galletas son lisiadas…
Instalación 4
Dirección de la sesión de PHP - sin las galletas
Si las galletas son lisiadas en el browser, el ejemplo antedicho no puede trabajar. El es porque aunque el archivo de la sesión que almacena todas las variables se guarda en el servidor, una galleta todavía se necesita en el browser para almacenar la identificación de la sesión que se utiliza para identificar la sesión y su archivo asociado de la sesión. La manera más común alrededor de esto sería pasar explícitamente la identificación de la sesión de nuevo al servidor del browser como parámetro de la pregunta en el URL.
Por ejemplo, la escritura de PHP genera las peticiones subsecuentes a la llamada del start_session en el formato siguiente:
http://www.yourhost.com/yourphpfile.php?PHPSESSID= [identificación real de la sesión]
Los siguientes son los extractos que ilustran la discusión:
Manualmente construcción del URL:
$url = “http://www.yoursite.com/yourphppage.php?PHPSESSID=”. session_id ();
¿[un href= " [? =$url?]“] Texto del ancla [/a]
Construcción del URL usando a SID:
¿[un href= " http://www.yoursite.com/yourphppage.php? ¿[? =SID?]“] Texto del ancla [/a]
Article Source: http://www.articleset.com

You are welcome to publish or reprint this article free of charge, provided:
- you include the entire article, unchanged, including the "About The Author" box
- all hyperlinks remain active, including the bottom ArticleSet.com link (does not apply to print publications)
- you agree not to hold the authors nor ArticleSet.com liable for any loss profits, expenses, or any other damages resulting from the use or misuse of articles published on this website