Souci de connexion et déconnection

Fermé
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 - 25 janv. 2016 à 09:19
Yuh12 Messages postés 184 Date d'inscription mercredi 7 mai 2014 Statut Membre Dernière intervention 28 septembre 2017 - 28 janv. 2016 à 14:31
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

Yuh12 Messages postés 184 Date d'inscription mercredi 7 mai 2014 Statut Membre Dernière intervention 28 septembre 2017 24
25 janv. 2016 à 16:26
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
Yuh12 Messages postés 184 Date d'inscription mercredi 7 mai 2014 Statut Membre Dernière intervention 28 septembre 2017 24
25 janv. 2016 à 09:46
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 ?
0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
Modifié par jordane45 le 25/01/2016 à 16:42
<!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.
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
25 janv. 2016 à 17:10
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



0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
27 janv. 2016 à 15:22
excusez moi mais cela ne passe toujours pas!!
0
Yuh12 Messages postés 184 Date d'inscription mercredi 7 mai 2014 Statut Membre Dernière intervention 28 septembre 2017 24
28 janv. 2016 à 14:31
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.
0