Probléme de condition [Résolu]

Signaler
Messages postés
38
Date d'inscription
mercredi 10 octobre 2012
Statut
Membre
Dernière intervention
23 juin 2014
-
Messages postés
38
Date d'inscription
mercredi 10 octobre 2012
Statut
Membre
Dernière intervention
23 juin 2014
-
Bonjour,

J'ai un champs Login dans ma table Consigne2 ou quand une personne propose des données j'enregistre les données plus le login de l'enregistreur avec
$_SESSION[Login]

Ce que je voudrais faire c'est une condition qui permet de voir seulement les proposition de l'utilisateur qui a son Login dans la table donc j'ai tester sa mais sa marche pas , je bloque ,

Comme exemple Login de la session c'est Toto
quand toto est actif je voie les valeurs $validation et le "oups"
et quand je change de session je voie uniquement le oups


$tef= $_SESSION['Login'];

$respon= mysql_query("SELECT * FROM Consigne2 WHERE Login ='$tef'")or die(mysql_error());
   
$quet = mysql_num_rows($respon);
  
while($validation3 = mysql_fetch_array($respon)){
       echo $validation3['Num'];
       echo"<br>";
       echo $validation3['Login'];
}
if($validation3['Login'] == $tef)
{
    echo "test";
}
else
{
    echo" oups";
}

Merci d'avance pour tout aide

1 réponse

Messages postés
32948
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 juin 2021
351
Bonjour,


1 - Pourquoi, pour la récupération de ta variable de SESSION tu n'utilises pas la syntaxe que je t'ai déjà mainte fois donné ? Celle qui vérifie en même temps que ta variable "existe" ?

$tef= isset($_SESSION['Login'])?$_SESSION['Login']:'error';


2 - As tu bien mis, au début de ta page :
session_start();



3 - Pense à séparer la "requête" de la commande qui la lance...
Cela permet de pouvoir en faire un echo et voir si elle est bonne !


4 - As tu fais des Echo/print de tes variables pour t'assurer qu'elles correspondent bien à tes attentes ??

session_start();

echo "<br>Variables de Session : <br>";
print_r($_SESSION);
echo "<br>";

$tef= isset($_SESSION['Login'])?$_SESSION['Login']:'error';
Echo " tef = " .$tef."<br>";


// La requête  
//(mise en forme avec des retours à la ligne pour qu'elle soit plus LISIBLE !!) :
$sql = "SELECT * 
          FROM Consigne2 
           WHERE Login ='$tef'"


 //=> Affichage de la requête :
  Echo "<br><b> La requête est : </b><br>".$sql."<br>";

//Exécution de la requête
$respon= mysql_query($sql)or die(mysql_error()."<br>".$sql."<br>");
   




5 - Tu tests si le contenu de ta requête vaut bien le login... mais tu le fais en dehors de ta boucle While...
Ce n'est pas bon.


while($validation3 = mysql_fetch_array($respon)){
       echo"<br>";
       echo $validation3['Num'];
       echo"<br>";
       echo $validation3['Login'];
       echo"<br>";
     if($validation3['Login'] == $tef){
          echo "test";
      }
     else{
         echo" oups";
     }

}


Messages postés
38
Date d'inscription
mercredi 10 octobre 2012
Statut
Membre
Dernière intervention
23 juin 2014

J'ai adapter ce que tu m'a donner est c'est bon sa marche
désolée pour la réponse tardive

Merci a Bientôt