web-dev-qa-db-fra.com

Bouton de déconnexion php

J'ai ce code et j'ai besoin du code pour ajouter un bouton de déconnexion, quelqu'un peut-il écrire le code d'un bouton de déconnexion qui déconnectera l'utilisateur, j'ai lu quelque chose sur la session de destruction mais je ne sais pas comment écrire le code, merci tu!

<?php
    include 'connection.php';
    //start of checking if user is logged in code
    if (!valid_credentials) {
    header('Location: login.php');
    exit();
    }

$_SESSION['user'] = 'username';


if (!isset($_SESSION['user'])) {
    header('Location: login.php');
    exit();
}
    //end of logged in code and starting a session

$query = "SELECT * FROM people";
$result = mysql_query($query);
While($person = mysql_fetch_array($result)) {
    echo "<h3>" . $person['Name'] . "</h3>";
    echo "<p>" . $person['Description'] . "</p>";
    echo "<a href=\"modify.php?id=" . $person['ID']. "\">Modify User</a>";
    echo "<span> </span>";
    echo "<a href=\"delete.php?id=" . $person['ID']. "\">Delete User</a>";
}
?>
<h1>Create a User</h1>
<form action="create.php" method="post">
    Name<input type ="text" name="inputName" value="" /><br />
    Description<input type ="text" name="inputDesc" value="" />
    <br />
    <input type="submit" name="submit" />
</form>
7
crusader1223

Au lieu d'un bouton, placez un lien et naviguez vers une autre page

<a href="logout.php">Logout</a>

Puis dans logout.php page, utilisez

session_start();
session_destroy();
header('Location: login.php');
exit;
25
asprin

Lorsque vous voulez détruire une session complètement, vous devez faire plus que juste

session_destroy();

Tout d'abord, vous devez désactiver toutes les variables de session. Vous devez ensuite détruire la session, puis fermer l'écriture de la session. Cela peut être fait de la manière suivante:

<?php
session_start();
unset($_SESSION);
session_destroy();
session_write_close();
header('Location: /');
die;
?>

La raison pour laquelle vous souhaitez avoir un script distinct pour une déconnexion est afin de ne pas l'exécuter accidentellement sur la page. Faites donc un lien vers votre script de déconnexion, puis l'en-tête sera redirigé vers la racine de votre site.

Éditer:

Vous devez supprimer le () de votre code de sortie vers le haut de votre script. ça devrait juste être

exit;
7
Mic1780