Souci de connexion et déconnection [Fermé]

Signaler
Messages postés
298
Date d'inscription
dimanche 9 février 2014
Statut
Membre
Dernière intervention
24 mars 2020
-
Messages postés
186
Date d'inscription
mercredi 7 mai 2014
Statut
Membre
Dernière intervention
28 septembre 2017
-
Bonjour à tous je début en html et php j’ai fait une page je me connecte ensuite je clique sur déconnecter je reviens sur la page d’acceuil mais le problème quand je clique sur le retour qui se trouve sur le navigateur du coup je me retrouve connecter automatiquement sans même saisir les informations pour être identifier. Pourrai avoir un coup de mains svp !

5 réponses

Messages postés
186
Date d'inscription
mercredi 7 mai 2014
Statut
Membre
Dernière intervention
28 septembre 2017
24
Dans cette logique normalement toute la partie du code ce qui devrait nécessiter la connexion pour y avoir accès sera entre les balises :
if(isset($_SESSION['id']))
{
// ici
}


Est ce que tu fais un unset($_SESSION['id']) pour la déconnexion ?

Afin de supprimer ta variable de session et d'être sûr que l'utilisateur ne pourra plus avoir accès à ces données ?
Normalement avec cet unset, tu peux revenir en arrière tant que tu veux, si la variable de SESSION de l'utilisateur n'existe plus, il ne pourra pas avoir accès à la partie "connectée".
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 86800 internautes nous ont dit merci ce mois-ci

Messages postés
186
Date d'inscription
mercredi 7 mai 2014
Statut
Membre
Dernière intervention
28 septembre 2017
24
Est ce que tu utilises les SESSIONS pour te connecter ?
Quelles sont tes étapes pour la connexion et pour la déconnexion ?
Peux-tu nous montrer un peu ton code si besoin ?
Messages postés
298
Date d'inscription
dimanche 9 février 2014
Statut
Membre
Dernière intervention
24 mars 2020
14
<!DOCTYPE html>
<html>
<head>
    <title>connexion administrateur</title>
    <link rel="stylesheet" href="css/style.css" >
</head>

<bod>
    
    <form method="post" action="#"> 
<body onLoad="window.location.href = '#openModal';"> 
    <div id="openModal" class="modalDialog">
        <div>
            <a href="../index.php" title="Close" class="close">Fermer</a>
          <h2>Espace administrateur</h2>
   <table border="0">
 
     <tr><td>Speudo:<td><input type="text" name="speudo"  placeholder="Votre Speudo">
       </tr>
     <tr><td>Mot de passe:</td>
       <td><input type="passord" name="password" ></td>
     </tr>
       <?php
    
    if(isset($_POST['valider']))
    {
       $speudo=htmlentities(trim($_POST['speudo']));
       $password=htmlentities(trim($_POST['password']));
       if($speudo&&$password)
       {
        
       } else echo '<h6><font color="red">remplissez tous les champs svp!!</font></h6>';
    }
    
    ?>
     <?php
   session_start();
// Connexion a la base de Données
$server="localhost";
$user="root";
$password="";
$bd="gestion";
mysql_connect($server,$user,$password) or die ("connexion à MYSQL");
mysql_select_db($bd) or die ("Base de données");
 // Test de l'envoi du formulaire
  if(!empty($_POST['valider'])) 
  {
  $speudo=$_POST['speudo'];
  $mot_de_passe=$_POST['password'];
    if(!empty($_POST['speudo']) && !empty($_POST['password'])) 
      {
   
   $sql='SELECT id_admin FROM administrateur WHERE speudo="'.$speudo.'" AND mot_de_passe="'.$mot_de_passe.'"';
   $req= mysql_query($sql);
   $nbre=mysql_num_rows($req);
   if($nbre==1)
   {
   $data= mysql_fetch_array($req);
   $id=$data['id_admin'];
       // On crée l'id en session
 $_SESSION['id'] = $id;
        // On redirige vers le fichier index.php  
  header('Location:index.php');   
      }
        else
    {
      echo'<h6><font color="red">Speudo ou Mot de passe incorrect</font></h6>';
 
    }
  }
 
   }

?>
 </table>
          <br>
          <div class="option_valider">
          <input type ="submit" name="valider" value="valider">
        </div>
    </div>
        
</form>
</body>
</html>




EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
Messages postés
28922
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 mai 2020
2 465
Bonjour,

Par contre,
penses à séparer ton PHP de ton HTML (en le placant avant par exemple)

Un truc du genre :

Sépares ta connexion à ta BDD en le mettant
dans un fichier à part que tu n'auras qu'à inclure lorsque tu en auras besoin :
<?php
// Fichier cnxBDD.php
// Connexion a la base de Données
$server="localhost";
$user="root";
$password="";
$bd="gestion";
mysql_connect($server,$user,$password) or die ("connexion à MYSQL");
mysql_select_db($bd) or die ("Base de données");
?>


<?php
//Démarrage des SESSIONS
session_start();

//Connexion à la BDD (import du fichier de connexion à la BDD)
require_once 'cnxBDD.php';


//Traitement de ton submit :

if(isset($_POST['valider']){
	 $speudo=!empty($_POST['speudo']) ? htmlentities(trim($_POST['speudo'])) : NULL;
	 $password=!empty($_POST['password']) ? htmlentities(trim($_POST['password'])) : NULL;
	 
	 if( !$speudo && !$password){
		 $msg = '<h6><font color="red">remplissez tous les champs svp!!</font></h6>';
	 }else{
		 
     $sql='SELECT id_admin FROM administrateur WHERE speudo="'.$speudo.'" AND mot_de_passe="'.$mot_de_passe.'"';
     $req= mysql_query($sql);
     $nbre=mysql_num_rows($req);
    if($nbre==1){
			$data= mysql_fetch_array($req);
			$id=$data['id_admin'];
			// On crée l'id en session
			$_SESSION['id'] = $id;
			// On redirige vers le fichier index.php  
			header('Location:index.php');   

    }else{
      $msg = '<h6><font color="red">Speudo ou Mot de passe incorrect</font></h6>';
    }		
	 }

}
?>

?>
<!DOCTYPE html>
<html>
<head>
    <title>connexion administrateur</title>
    <link rel="stylesheet" href="css/style.css" >
</head>

<bod>
    
    <form method="post" action="#"> 
<body onLoad="window.location.href = '#openModal';"> 
    <div id="openModal" class="modalDialog">
        <div>
            <a href="../index.php" title="Close" class="close">Fermer</a>
          <h2>Espace administrateur</h2>
   <table border="0">
 
     <tr>
		   <td>Speudo:<td><input type="text" name="speudo"  placeholder="Votre Speudo">
     </tr>
     <tr>
		   <td>Mot de passe:</td>
       <td><input type="passord" name="password" ></td>
     </tr>
      
     
 </table>
          <br>
          <div class="option_valider">
          <input type ="submit" name="valider" value="valider">
        </div>
    </div>
        
</form>
</body>
</html> 
 


PS: Merci de lire ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top



Messages postés
298
Date d'inscription
dimanche 9 février 2014
Statut
Membre
Dernière intervention
24 mars 2020
14
excusez moi mais cela ne passe toujours pas!!
Messages postés
186
Date d'inscription
mercredi 7 mai 2014
Statut
Membre
Dernière intervention
28 septembre 2017
24
On ne sait pas ce que tu as testé, ni même où est désormais le problème.
Si la seule infos que tu donnes se résume à "ça ne marche pas", on ne peux juste pas répondre.