sesiones
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
// Sesiones en PHP
|
||||
//Pasos uso de sesiones en PHP
|
||||
/*
|
||||
1. Identificación de sesión: se le asigna un identificador y se guarda en una cookie del navegador.
|
||||
|
||||
2. Almacenamiento de datos de sesión: variable superglobal $_SESSION se utiliza para acceder y modificar estos datos.
|
||||
|
||||
3. Inicio y cierre de sesión: Inicio de sesión session_start(). Esto inicializa o reanuda una sesión existente.
|
||||
Una vez que la sesión ha comenzado, se pueden guardar y recuperar datos utilizando la superglobal $_SESSION.
|
||||
Finalizar una sesión, se utiliza session_destroy(), elimina todos los datos y destruye la sesión.
|
||||
|
||||
4. Configuración de sesiones: configuración php.ini o mediante funciones como session_set_cookie_params().
|
||||
*/
|
||||
|
||||
//Crear una Sesión
|
||||
session_start(); // Lo primero que debe aparecer en la página
|
||||
// Definir Variables
|
||||
$_SESSION['nombre'] = 'Juan';
|
||||
$_SESSION['apellido'] = 'Perez';
|
||||
// Modificar variables
|
||||
$_SESSION['apellido'] = 'Porto';
|
||||
// Consultar la sesión
|
||||
echo '<br>';
|
||||
var_dump($_SESSION);
|
||||
// Añadir variables
|
||||
$_SESSION['apodo'] = 'Totoki';
|
||||
// ID de sesión la indentifica
|
||||
echo '<br>';
|
||||
echo session_id();
|
||||
echo '<br>';
|
||||
var_dump($_SESSION);
|
||||
// Destruir la sesión
|
||||
//$_SESSION = []; // Borra las variables pero la sesión sigue activa
|
||||
//session_destroy() // Finaliza la sesión y borra los datos
|
||||
echo '<br>';
|
||||
//var_dump($_SESSION);
|
||||
|
||||
?>
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>INTRO8 PHP SESIONES</title>
|
||||
</head>
|
||||
<body>
|
||||
<a href="INTRO8_PHP_SESIONES2.php">Continuar sesión</a>
|
||||
<a href="destruir_sesion.php">Cerrar sesión</a>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,29 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>INTRO8 PHP SESIONES2</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<?php
|
||||
|
||||
//Conectar a una Sesión
|
||||
session_start();
|
||||
|
||||
//Añadimos una variable
|
||||
$_SESSION['edad'] = '30';
|
||||
// Accedo a datos de la sesión
|
||||
echo $_SESSION['nombre'];
|
||||
echo '<br>';
|
||||
echo $_SESSION['apellido'];
|
||||
echo '<br>';
|
||||
echo $_SESSION['apodo'];
|
||||
echo '<br>';
|
||||
echo $_SESSION['edad'];
|
||||
?>
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,34 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>INTRO8 PHP SESIONES3</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<?php
|
||||
// Sesiones en PHP
|
||||
// Nombrar la sesión o consultar su nombre , por defecto(PHPSESSID)
|
||||
session_name("ejemplo1");// Se debe usar antes de iniciar la sesión
|
||||
echo session_name();//Consultar nombre de sesión
|
||||
//Parametros de la cookie de sesión
|
||||
//session_set_cookie_params($lifetime, $path, $domain, $secure, $httponly);
|
||||
session_set_cookie_params(
|
||||
0,//Tiempo de vida de la cookie de sesión, definido en segundos.
|
||||
'/',//Ruta en el servidor donde la cookie trabajará.
|
||||
'www.php.net',//Dominio de la cookie, por ejemplo 'www.php.net'.
|
||||
false,//Si es true la cookie sólo será enviada sobre conexiones seguras.
|
||||
false // Si es false puede ser accesible por javascript.
|
||||
);
|
||||
session_start();//Inicio la sesión
|
||||
// Para consultar los parametros de la cookie de sesión
|
||||
var_dump(session_get_cookie_params());
|
||||
//Borrar todos los valores de $_SESSION
|
||||
//session_unset();
|
||||
|
||||
?>
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
44
Practicas/Practicas_PHP/codigo/sesiones/login.php
Normal file
44
Practicas/Practicas_PHP/codigo/sesiones/login.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<html>
|
||||
<body>
|
||||
|
||||
<form method="post">
|
||||
<p>
|
||||
<input type="text" name="usuario" placeholder="Usuario">
|
||||
</p>
|
||||
<p>
|
||||
<input type="password" name="contraseña" placeholder="Contraseña">
|
||||
</p>
|
||||
<p>
|
||||
<input type="submit" value="Entrar">
|
||||
</p>
|
||||
</form>
|
||||
<?php
|
||||
|
||||
// Comprobamos que nos llega los datos del formulario
|
||||
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
||||
|
||||
// Variables que teóricamente estarían en una base de datos o en un archivo
|
||||
$usuarioBueno = 'flecha';
|
||||
$contraseñaBuena = '5454';
|
||||
|
||||
// Variables del formulario
|
||||
$usuario = isset($_POST['usuario']) ? $_POST['usuario'] : null;
|
||||
$contraseña = isset($_POST['contraseña']) ? $_POST['contraseña'] : null;
|
||||
|
||||
// Comprobamos si los datos son correctos
|
||||
if ($usuarioBueno === $usuario && $contraseñaBuena === $contraseña) {
|
||||
// Si son correctos, creamos la sesión
|
||||
session_start();
|
||||
$_SESSION['usuario'] = $_POST['usuario'];
|
||||
// Redireccionamos a la página personalizada
|
||||
header('Location: perfil.php');
|
||||
die();
|
||||
} else {
|
||||
// Si no son correctos, informamos al usuario
|
||||
echo '<p style="color: red">El apodo o la contraseña es incorrecta.</p>';
|
||||
}
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
9
Practicas/Practicas_PHP/codigo/sesiones/logout.php
Normal file
9
Practicas/Practicas_PHP/codigo/sesiones/logout.php
Normal file
@@ -0,0 +1,9 @@
|
||||
<?php
|
||||
// Iniciamos las sesiones
|
||||
session_start();
|
||||
// Destruimos las sesiones
|
||||
session_destroy();
|
||||
// Llevamos a login.php
|
||||
header('Location: login.php');
|
||||
// Cortamos el script
|
||||
die();
|
||||
18
Practicas/Practicas_PHP/codigo/sesiones/perfil.php
Normal file
18
Practicas/Practicas_PHP/codigo/sesiones/perfil.php
Normal file
@@ -0,0 +1,18 @@
|
||||
<?php
|
||||
// Comprobamos si existe la sesión de apodo
|
||||
session_start();
|
||||
if (!isset($_SESSION['usuario'])) {
|
||||
// En caso contrario devolvemos a la página login.php
|
||||
header('Location: login.php');
|
||||
die();
|
||||
}
|
||||
?>
|
||||
<html>
|
||||
<body>
|
||||
<!-- Saludamos -->
|
||||
<h1>Bienvenido <?php echo $_SESSION['usuario']; ?></h1>
|
||||
<!-- Botón para cerrar la sesión -->
|
||||
<a href="logout.php">Cerrar sesión</a>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user