Deconexion des que je re actualise

Fermé
arthur - 5 mai 2019 à 18:14
SioGabx Messages postés 265 Date d'inscription mardi 21 août 2018 Statut Membre Dernière intervention 17 novembre 2022 - 6 mai 2019 à 23:16
Bonjour,

j'ai mis un onglet deconnexion

<li data-index="2" class="onglet"><span id="icon-onglet-deconnexion">deconnexion</span></li>


et j'ai mis sur la page deconnection



<?php
      //Cette fonction doit être appelée avant tout code html
	  session_destroy();
	  
	  if ( empty($id) ) erreur(ERR_IS_CO);
	  
	  echo '<p>Vous êtes à présent déconnecté <br />Cliquez <a href="'.htmlspecialchars($_SERVER['HTTP_REFERER']).'">ici</a> pour revenir à la page précédente.<br />Cliquez <a href="./index.php">ici</a> pour revenir à la page principale</p>';
	  echo '</div></body></html>';
?>



mon site s'affiche sur une seul page unique avec plussieur page sur les dossier module que j'include

je me connecte ensuite je voit bien l'onglet deconnexion

le souci si je ré actualise la page f5 il me deconnecte

comment lui dire de se déconnecte uniquement lorsque je clique sur onglet deconexion sinon on se deconnecte pas

merci


Configuration: Windows / Chrome 73.0.3683.103

1 réponse

SioGabx Messages postés 265 Date d'inscription mardi 21 août 2018 Statut Membre Dernière intervention 17 novembre 2022 100
6 mai 2019 à 01:34
C'est normal, je t'invite à suivre un tuto pour comprendre ton erreur : le script php s'exécute de haut en bas, dés que tu actualise ta page, il tombe sur
session_destroy();
ce qui détruit ta session et donc te déconnecte..

https://openclassrooms.com/fr/courses/123252-creer-un-espace-membre-pour-son-site/123092-tp-connexion-et-deconnexion
0
je fais cette page

https://openclassrooms.com/fr/courses/1401411-creer-son-forum-de-toutes-pieces/1401751-inscription-et-connexion#/id/r-1403338
0
SioGabx Messages postés 265 Date d'inscription mardi 21 août 2018 Statut Membre Dernière intervention 17 novembre 2022 100 > arthur
6 mai 2019 à 23:16
Bon je te donne la solution pour que ça marche, si j'ai bien compris tu as mis le session_destroy(); en haut de ta page ? Dans ce cas remplace le par :
if (htmlspecialchars($_GET['deconnexion']) == "yes"){
session_destroy();
}


et pour le lien qui te deconnecte :
<a href="#deconnection=yes">Deconnexion</a>
0