Aide PhP Rapide (conditions)

Floultime -  
 Floultime -
Bonjour,

J'ai le code suivant :

    if( empty ( $pseudo ) or empty ( $mdp ) or empty ( $email ) )
    {
      echo 'vide';
      exit( header("Location: inscription.php") );
    }


    if( $mdp != $verif )
    {
      echo 'mot de passe';
	   
    }
	
    {
 $sql = "INSERT INTO infos_compte(pseudo,passe,email,parrain,dateinscription,idboutique) VALUES('$pseudo','$mdp','$email','$parrain','$date','')";
 //exécution de la requête SQL:
  $requete = mysql_query($sql) or die( mysql_error() ) ;
 }
  //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
  {
    echo("L'insertion a été correctement effectuée") ;
  }
  else
  {
    echo("L'insertion à échouée") ;
  }


Qui ne fonctionne pas comme je voudrais: je voudrais que le requète ($sql) ne s'applique que si les condtion ne sont pas vérifiés ( si $mdp n'est pas égal $verif ==> Ne rien faire ). Or dans mon script, l'insertion se fait dans tous les cas !

Merci

6 réponses

  1. prypiat_child Messages postés 1500 Statut Membre 273
     
    Il ne manquerait pas un "else" tout simplement ?

         if( $mdp != $verif )  
        {  
             echo 'mot de passe';  
        }  
        else 
        {  
             $sql = "INSERT INTO ....  
             $requete = ...
        }  
    
    0
  2. @lobotomix:~# rm -rf *\ Messages postés 1392 Date d'inscription   Statut Membre Dernière intervention   208
     
    Bonjour je débute en php mais la requête sql n'est incluse dans aucune condition
    0
  3. Floultime
     
    Le problème est que les deux conditions doivent être validés

    Merci de votre réponse
    0
    1. Tatanos Messages postés 1263 Statut Membre 156
       
      Salut,

      Ajoute une variable a la con dans tes 2 conditions genre : "$Variable = 1;"

      Et juste avant ta requete, tu fais un if ( $Variable =! 1 ) {....

      Si tu es passé dans une seule de tes deux premières conditions, tu ne passera pas dans celle ci puisque ta variable aura été initialisée à 1
      0
    2. Floultime
       
      Merci
      0
  4. Floultime
     
    J'ai essayé comme ça
    $vpseudo = 0 ;
    $vmdp = 0 ;
    $vpseudomsg = "";
    $vmdpmsg = "";
    
        if( empty ( $pseudo ) or empty ( $mdp ) or empty ( $email ) )
        {
    $vpseudomsg = "Veuillez remplir tous les champs" ;
    $vpseudo = 1 ;
        }
    
    
        if( $mdp != $verif )
        {
          $vmdpmsg = "les mots de passe ne correspondent pas" ;
    	   $vmdp = 1 ;
        }
    	
       if( $vmdp = 1 OR $vpseudo = 1 )
       {
    	   echo $vpseudomsg ;
    	   echo $vmdpmsg ;
       }
       else {
     $sql = "INSERT INTO infos_compte(pseudo,passe,email,parrain,dateinscription,idboutique) VALUES('$pseudo','$mdp','$email','$parrain','$date','')";
     //exécution de la requête SQL:
      $requete = mysql_query($sql) or die( mysql_error() ) ;
       }
       
        ?>
       
      <?php
      //affichage des résultats, pour savoir si l'insertion a marchée:
      if($requete)
      {
        echo("L'insertion a été correctement effectuée") ;
      }
      else
      {
        echo("L'insertion à échouée") ;
      }
      
       
      ?>


    Mais l'insertion ne se fait pas ( la partie à partir du else est occultée)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. JooS Messages postés 2705 Statut Membre 228
     
    Salut ...

    if(empty($pseudo) OR empty($mdp) OR empty($email) OR empty($verif)) 
    { 
        echo 'Vide'; 
        header("Location: inscription.php"); 
    } 
    
    elseif($mdp != $verif) 
    { 
        echo 'Mot de passe incorrect.'; 
    } 
      
    else 
    { 
        $sql = "INSERT INTO infos_compte(pseudo,passe,email,parrain,dateinscription,idboutique) VALUES('$pseudo','$mdp','$email','$parrain','$date','')"; 
    
        $requete = mysql_query($sql) or die( mysql_error() ) ; 
    
        if($requete) 
        { 
            echo 'L\'insertion a été correctement effectuée.'; 
        } 
        else 
        { 
            echo 'L\'insertion à échouée.'; 
        } 
    }


    Mettez en résolu quand c'est résolu -.- ...
    0
  7. Floultime
     
    $vpseudo = 0 ;
    $vmdp = 0 ;
    $vpseudomsg = "";
    $vmdpmsg = "";
    
        if( empty ( $pseudo ) or empty ( $mdp ) or empty ( $email ) )
        {
    $vpseudomsg = "Veuillez remplir tous les champs" ;
    $vpseudo = 1 ;
        }
    
    
        if( $mdp != $verif )
        {
          $vmdpmsg = "les mots de passe ne correspondent pas" ;
    	   $vmdp = 1 ;
        }
    	
       if( $vmdp = 1 OR $vpseudo = 1 )
       {
    	   echo $vpseudomsg ;
    	   echo $vmdpmsg ;
       }
       else 
       {
     $sql = "INSERT INTO infos_compte(pseudo,passe,email,parrain,dateinscription,idboutique) VALUES('$pseudo','$mdp','$email','$parrain','$date','')";
     //exécution de la requête SQL:
      $requete = mysql_query($sql) or die( mysql_error() ) ;
       }
       
        
       
    
      //affichage des résultats, pour savoir si l'insertion a marchée:
      if($requete)
      {
        echo("L'insertion a été correctement effectuée") ;
      }
      else
      {
        echo("L'insertion à échouée") ;
      }
      
       ?>
    0