Sistema de gestión de estados en PHP

La base básica de un sistema de comunicación de datos para Internet es HTTP (Protocolo de transferencia de hipertexto) que es un protocolo de capa de aplicación , distributivo y colaborativo, y un sistema de información hipermedia. Como sabemos, HTTP es un protocolo genérico y sin estado para administrar el estado en aplicaciones como comercio electrónico, redes sociales, sitios de blogs, muchos sitios comerciales con la ayuda de sesiones y cookies.

HTTP es un protocolo sin estado debido a que también se sabe que no tiene conexión. El servidor y el cliente se conocen entre sí solo cuando la solicitud actual después de que el cliente y el servidor se olvidaron, por lo que el navegador no puede obtener información entre diferentes requests en las páginas web.

Tipo de sistema de gestión estatal

1. Sistema de administración de estado del lado del servidor: en el sistema de administración de estado del lado del servidor, solíamos almacenar información específica del usuario para identificar al usuario en el servidor y la información está disponible en todas las páginas web. Ejemplo: variables de sesión

2. Sistema de gestión de estado del lado del cliente: En un sistema de gestión de estado del lado del cliente, el navegador almacena la información del usuario. Ejemplo: galletas

galletas :

  • Las cookies se utilizan para el sistema de gestión de estado del lado del cliente.
  • Las cookies son datos del navegador, las cookies se envían al servidor web como una parte de la información del encabezado con cada solicitud HTTP.
  • Las cookies pueden contener un tamaño de datos de 1 KB (1024 B).

Usos de las Cookies:

  • Para almacenar información sobre los visitantes con respecto a la página del sitio web accedido.
  • Número de visitas y vistas.
  • Almacene la información de la primera visita y actualícela en cada visita que apunte hacia una mejor experiencia del usuario.

Tipo de Cookies:

1. Cookie de sesión: este es un tipo de cookie que caduca cuando se destruye la sesión.

2. Cookie persistente: la cookie persistente es un tipo de cookie que se almacena permanentemente en el sistema del navegador y caduca en un momento específico.

Creación de Cookies: En PHP, podemos crear y configurar cookies mediante setcookie() 

Sintaxis:

setcookie( name, value, expire, path, domain, secure );

nombre: Es obligatorio para el momento de la creación, los demás argumentos son opcionales.

seguro: si se establece en 1, significa que está disponible y se envía a PHP.

Ejemplo:

PHP

<?php
  
Setcookie("username", "abc", time() + 60 * 60);
  
?>

Nota: 

  • Para recuperar datos de cookies en PHP, use $_COOKIES.
  • Para verificar si está configurado o no, use la función isset() .

PHP

<?php
Setcookie("username", "abc", time() + 60 * 60);
?> 
<html>            
<body>
    if(isset($_COOKIE["username"])) {
        echo "Cookie is set";
    }
    else {
        echo "Cookie is not set";
    }
</body>
</html>

Solo para actualizar las cookies, necesitamos cambiar el argumento llamando a la función setcookie() . Cambiamos el nombre “abc” a “xyz”.

PHP

<?php
  
setcookie("username", "xyz", time() + 60 * 60);
  
?>

Para eliminar las cookies, debemos establecer el tiempo de caducidad en negativo.

PHP

<?php
  
Setcookie("username", "xyz", time() - 3600);
  
?>

Nota: La desventaja de usar cookies es que se pueden recuperar y eliminar fácilmente. No es seguro.

Sesión:

  • Session almacena información del lado del servidor, de modo que toda la información sea accesible para todas las páginas web.
  • Es más seguro que las cookies.
  • Sabemos que HTTP es un protocolo sin estado, por lo que la solicitud actual no puede recordar la tarea realizada anteriormente.

Por ejemplo, cuando queremos comprar algo en línea, visitamos muchos sitios web de comercio electrónico y comparamos productos. Algunos de ellos se agregan al carrito para referencia futura. Después de unos días, cuando estamos listos para comprarlo, la información aún está disponible ya que la sesión del carrito se configura antes.

La sesión es independiente del tamaño para almacenar tantos datos como el usuario desee.

Usos de la sesión:

  1. Proporciona funcionalidad de inicio y cierre de sesión para almacenar y mostrar información relevante.
  2. Mantiene carrito de e-commerce.

Creación de sesión: en PHP, la sesión comienza desde la función session_start() y los datos se pueden establecer y obtener mediante variables globales $_SESSION.

Ejemplo:

PHP

<?php
    session_start();
    $SESSION["username"] = "abc";
    $SESSION["userid"] = "1";
?>
<html>
<body>
    <?php
     echo "Session variable is set";
     ?>
<button type="submit" href="logout.html"></button>
</body>
</html>

Recuperar información a otras páginas como el siguiente ejemplo:

PHP

<?php
  
echo "Username:" . " " . $username;
  
echo "Userid:" . " " . $userid;
  
?>

Producción:

Username abc
Userid 1

Para actualizar el valor de la variable de sesión

$_SESSION["userid"]="1024";

Para destruir una sesión en PHP, primero deshabilite todas las variables de sesión usando los métodos session_unset() y llame a session_destroy() .

PHP

<?php
session_start();
?>
<html>
<body>
<?php 
  
session_unset();
session_destroy();
?>
</body>
</html>

Publicación traducida automáticamente

Artículo escrito por vanditachapadia293 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *