PHP: imprescindible para crear páginas web de modo profesional
Y ahora tambien aprende a programar en C++ con Aprende Web C++
y entérate de las novedades o deja un comentario.
última modificación: 13-07-2018.
Visitas este mes: 21
Visitas el mes pasado: 48
Mi agradecimiento a los siguientes sitios en los que me he basado para la elaboración de este manual.:
Si este sitio te parece interesante puedes contribuir con una pequeña aportación.
Estas son dos formas de disponer de datos y variables en todo el sitio web. El ámbito de las variables es la página, por lo que al cambiar de página (dentro del mismo sitio), las variables que tenemos desaparecen. Tanto cookies como variables solucionan este problema, si bien de forma diferente.
Una cookie es un archivo que se crea automáticamente para poder guardar un dato o una variable. Una vez creado para utilizarlo en otra página no tenemos más que abrirlo en esa otra página.
Sin embargo las cookies tienen una serie de características que restringen bastante su uso:
Para crear nuevas cookies utilizamos la función set_cookie(). Esta debe ponerse al principio de la página, incluso antes de la etiqueta !DOCTYPE. Esta función tiene varios argumentos, sólo el primero es obligatorio, pero para que la cookie funcione debemos incluir los tres primeros:
set_cookie($nombre,$valor,$caducidad);
En cada uno de estos argumentos pondremos lo siguiente:
Para indicar la fecha de caducidad lo normal es crearla a partir de la fecha actual (funcion time()), a la que se le suma el tiempo que queremos que esté activa. Ejemplo de cookie:
set_cookie("saludo","Hola mundo",time()+3600*24*30);
La cookie de este ejemplo tiene como nombre "saludo", como valor "Hola mundo" y como caducidad 30 días (3600*24*30 = segundos que tiene un mes).
Podemos además añadir otros argumentos a la función que crea la cookie, aunque no suelen utilizarse mucho debemos conocerlos:
Para poder acceder a una cookie desde cualquier página en la que esté disponible lo haremos mediante el array interno $_COOKIE. Desde ahí con el nombre de la cookie accedemos a su valor.
Por ejemplo si hemos guardado esta cookie:
set_cookie("saludo","Hola mundo",time()+3600*24*30);
Para poder ver el dato en pantalla en otra página en la que esté disponible escribiremos:
echo $_COOKIE['saludo'];
Una cookie se borra automáticamente al alcanzar la fecha de caducidad, o al reescribirla de nuevo, en este último caso es remplazada por la nueva cookie.
También podemos borrarla explícitamente, para ello la volvemos a reescribir mediante set_cookie(), pero poniendo sólo el primer argumento, es decir, el nombre:
set_cookie('saludo');
Borramos aquí la cookie que hemos usado en ejemplos anteriores.
Una sesión es el recorrido que hace un usuario por un sitio web, desde que entra hasta que sale, es decir todas las páginas que recorre en el sitio.
Las variables normalmente expiran al cerrar cada página, sin embargo en PHP se pueden crear variables de sesión, que estén disponibles en todas las páginas.
Para ello debemos primero crear una sesión, y después las variables de sesión.
Las sesiones se utilizan para crear cuentas o sesiones de usuario, páginas de compras, etc.
Las variables estarán disponibles en todas las páginas de la sesión hasta que ésta se cierre. Al cerrar la sesión éstas se pierden. Su utilidad está en poder disponer de ellas en distintas páginas mientras que el usuario navega por nuestro sitio. Para guardarlas de forma permanente utilizaremos otros métodos (cookies, archivos o bases de datos).
Para iniciar una sesión debemos utilizar la siguiente función:
session_start();
Esta función debe escribirse al principio de la página, antes de cualquier script, antes de la etiqueta
!DOCTYPE
y antes incluso de cualquier
otra sentencia en PHP como pueden ser la función header() o set_cookie()
vistas anteriormente.
La función session_start() no tiene argumentos. Todas las páginas en las que utilicemos variables de sesión deben llevar esta función al principio.
La función session_start() busca si el usuario tiene abierta una sesión, y entra en ella, si no la tiene abierta la crea y le da un identificador, que será distinto para cada usuario. Puede, por tanto haber varios usuarios viendo la página al mismo tiempo, y cada uno de ellos tendrá una sesión distinta.
En todas las páginas identificadas como de la sesión (con la función session_start()) hay disponible el array interno $_SESSION, con el que podemos guardar o mostrar las variables de sesión.
Para crear una variable de sesión creamos un nuevo elemento de este array:
$_SESSION['saludo']="Hola mundo.";
Si queremos pasar una variable de la página lo haremos:
$_SESSION['nombre']=$nombre;
Para poder ver o utilizar la variable en otra página de la sesión buscamos el elemento del array:
echo $_SESSION['saludo'];
$nombre = $_SESSION['nombre'];
Las funciones isset() y unset() permiten respectivamente comprobar si una variable existe, y eliminar la variable. Podemos aplicarlas también a las variables de sesión.
$comprobar=isset($_SESSION['nombre']);
Devuelve un valor booleano (true, false), por lo que comprueba si la variable ha sido creada.
unset($_SESSION['saludo']);
Elimina esta variable de sesión.
Si queremos eliminar todas las variables de sesión utilizaremos la función:
session_unset();
Esta función no tiene argumentos, elimina y libera el espacio que ocupan todas las variables de sesión.
Si queremos eliminar todos los datos referentes a la sesión, utilizaremos la función:
session_destroy();
Elimina la sesión en sí con todos sus datos, pero no elimina las cookies asociadas.
Otras variables nos permiten ver información sobre la sesión o cambiar sus datos;
En la siguiente página veremos cómo manejar archivos en PHP, lo cual resulta muy útil para guardar datos de forma permanente.
Sugerencias:
aprendeweb@aprende-web.net. Envia un
Visita nuestro blog par saber en qué estamos trabajando: Aprende Web Blog
Más sobre anyelguti en http://anyelguti.16mb.com