Probléme de condition

Résolu
Cocob84
Messages postés
38
Date d'inscription
mercredi 10 octobre 2012
Statut
Membre
Dernière intervention
23 juin 2014
- 20 juin 2014 à 11:49
Cocob84
Messages postés
38
Date d'inscription
mercredi 10 octobre 2012
Statut
Membre
Dernière intervention
23 juin 2014
- 23 juin 2014 à 10:19
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

jordane45
Messages postés
35771
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
3 juillet 2022
358
20 juin 2014 à 12:02
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";
     }

}


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

Modifié par Cocob84 le 23/06/2014 à 10:19
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
0