Creando las cookies y almacenando las session
Comentamos la primera parte del script donde se gestiona la sesión y las cookies
01/1/70 -
Ya hemos visto que en el script formulario.php introducíamos en el atributo value de las etiquetas input del formulario unas pequeñas incrustaciones de código PHP que nos permitían rellenar el formulario automáticamente. Lo que no vimos es cómo esas variables eran definidas.
El proceso de creación de esas variables tiene lugar en el script enviopostal.php que es donde recibimos los datos del formulario.
Para hacer partícipe al script de las variables registradas en la sesión es necesario antes de nada iniciar la sesión:
Seguidamente, puesto que este script puede llamarse a sí mismo y no necesariamente ejecutarse desde la página del formulario, debemos crear la condición de que la creación de las
variables_formulario y de las cookies tenga lugar en el caso de que provengamos del script
formulario.php o, lo que es lo mismo, que el script no se esté ejecutando desde él mismo (un enlace que apunta a la misma página). Esta condición ha sido expresada en términos de variables del sistema tan sólo para presentar una vez más su utilidad a la vez que mostramos una función muy útil para la gestión de cadenas:
|
if (!ereg($PHP_SELF,$HTTP_REFERER))
|
Esta condición lo que expresa es: "Si en la variable
$HTTP_REFERER (URL de procedencia) NO está incluida la variable
$PHP_SELF (camino virtual de ejecución del script) llevamos a cabo lo siguiente..."
La función
ereg sirve para detectar si un determinado texto ha sido encontrado en el interior de otro. Aquí los textos serían las dos variables de sistema.
El paso siguiente, si la condición resulta verdadera, es crear las variables de sesión y las cookies algo relativamente trivial salvo para el caso del campo checkbox
avisar donde, si queremos que el checkbox sea validado al volver al formulario, hemos de darle el valor "
checked".
Os recomendamos reflexionar un poco sobre la función que desempeña la opción
else en este condicional. Para ello hay que tener en cuenta que la variable
$avisar no será inicializada si la caja no es validada y que el visitante puede validarla en una primera visita al formulario y anular la validación en la segunda. Si este es al caso, la variable
$avisar no habrá sido inicializada y
variables_formulario[4] continua almacenando el valor
checked por lo que al volver por tercera vez al formulario encontraríamos la caja validada a no ser que incluyamos dicha instrucción
else en la que vaciamos la variable de sesión.
if (isset($avisar))
$variables_formulario[4]="checked";
else
$variables_formulario[4]="";
|
El objeto de esta reflexión no es más que familiarizaros un poco más sobre el concepto de sesión con un ejercicio mental de este tipo.
Ir a la aplicación
Seguir navegando a partir aquí:
+ 1 manual relacionado
+ 3 categorias relacionadas
+ 1 comentario no revisado
| Autoría, licencia y acciones sobre este artículo |
|
Informe de Rubén Alvarez*
Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.
* Para consultas técnicas utilizar la lista de correo.
|
Manuales relacionados con este artículo
Categorias relacionadas
A través de las categorías de nuestro directorio se pueden encontrar otro tipo de recursos relacionados con este artículo:
+ Entrar en
Colecciones de scripts+ Entrar en
Scripts en PHP+ Entrar en
Manuales de PHP
| Comentarios sin revisar |
|
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
|
Se ha encontrado un comentario sin revisar
Ir arriba