PHP | Variable de sesión no configurada

Siempre que los datos se almacenan mediante cookies, existe la posibilidad de que un hacker inserte algunos datos dañinos en la computadora del usuario para dañar cualquier aplicación. Por lo tanto, siempre es recomendable usar sesiones de PHP para almacenar información en el servidor que en una computadora. Siempre que se necesitan datos en muchas páginas de un sitio web o aplicación, se utiliza la sesión de PHP .

Esta sesión crea un archivo temporal en una carpeta que almacena variables registradas con sus valores que están disponibles para todo el sitio web. Esta sesión finaliza cuando el usuario cierra la sesión del sitio o del navegador. Cada usuario diferente recibe ID de sesión únicos que están vinculados a las publicaciones o correos electrónicos de un individuo.

<?php
  session_start();
  echo session_id();
?>

Nota: el motor PHP genera aleatoriamente los ID de sesión, lo que es difícil de distinguir.

Ejemplo: La siguiente función de PHP anula el registro o borra una variable de sesión cada vez que se usa $_SESSION en algún código. Se utiliza principalmente para destruir una única variable de sesión.

  • Sintaxis:
      unset($_SESSION['variable_name']);
    
  • Programa 1:

    <!DOCTYPE html>
    <html>
      
    <head>
        <style>
            body {
                width: 450px;
                height: 300px;
                margin: 10px;
                float: left;
            }
              
            .height {
                height: 10px;
            }
        </style>
    </head>
      
    <body>
        <h1 style="color:green">GeeksforGeeks</h1>
        <b> PHP Unset session variables </b>
        <div class="height"> </div>
    <?php
         
    // start a new session 
    session_start(); 
            
    // Check if the session name exists 
    if( isset($_SESSION['name']) ) { 
        echo 'Session name is set.'.'<br>'; 
    else { 
        echo 'Please set the session name !'.'<br>'; 
     echo'<br>';
     $_SESSION['name'] = 'John'; 
       
      //unset($_SESSION['name']);     
     echo "Session Name : ".$_SESSION['name'].'<br>'; 
        
    ?> 
    </body>
    </html>
  • Salida: cuando comentamos unset($_SESSION[‘name’]) , obtienes la siguiente salida.

Nota: La función PHP session_start() siempre se escribe al comienzo de cualquier código.

  • Cuando hacemos unset($_SESSION[‘name’]) , al descomentar la línea requerida en el programa de ejemplo, obtienes el siguiente resultado.
      unset($_SESSION['name']);      
      //echo "Session Name : ".$_SESSION['name'];  
    
  • Producción:
  • Si desea destruir todas las variables de sesión, utilice la siguiente función de PHP.
    session_destroy();
  • Si desea limpiar o liberar el espacio ocupado por las variables de sesión para otros usos, se utiliza la siguiente función de PHP.
    session_unset();
  • Programa 2:

    <!DOCTYPE html>
    <html>
       
    <head>
        <title>Unset Session Variable </title>
    </head>
       
    <body>
        <h1 style="color:green">GeeksforGeeks</h1>
        <b> Unset previous session of user</b>
        <?php
         echo '<br>';
         echo '<br>';
         if(isset($_SESSION["user_name"]))
         { echo "Welcome "; echo $_SESSION["user_name"]; }
        ?>
            <form>
                Input your name here:
                <input type="text" id="user_id" name="user_id">
                <input type=submit value=Submit>
            </form>
            <form action="#">
                <input type="submit" name="submit"
                       value="Unset"
                       onclick="UnsetPreviousSession()">
            </form>
        <?php 
       
        session_start();
       
        if(!isset($_SESSION["user_name"]) && (!empty($_GET['user_id'])))
        {
            $_SESSION["user_name"] = $_GET["user_id"];
        }
        else
        
            UnsetPreviousSession();
        }
        function UnsetPreviousSession()
        {
           unset($_SESSION['user_name']); 
        }
        ?>
    </body>
       
    </html>
  • Salida: después de hacer clic en el botón Desarmar , la siguiente pantalla de salida es visible para volver a ingresar y muestra que la variable de sesión anterior está desarmada.

Publicación traducida automáticamente

Artículo escrito por geetanjali16 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 *