$_POST et if

Bonjour,

je souhaite faire une page qui valide l'inscription d'un nouveau membre de ma page , alors j'ai crée deux pages, la premiere saisieclient.php dans laquelle le client saisie ses infos et la 2eme verifie.php qui vérifie si le membre est déjà inscrit ou non;

saisieclient.php

 

<?php
session_start(); ?>


<form action="saisieclient.php" method="post"> 
<table> 
<tbody> 
<tr> <td>Nom : </td> <td> <input type="text" name="nom" size="40" maxlength="40" /><br /> </td> </tr> 

<tr> <td>Prénom : </td> <td> <input type="text" name="prenom" size="40" maxlength="40" /><br />  </td> </tr> 

<tr> <td>Age : </td> <td> <input type="text" name="age" size="10" maxlength="2" /><br /> </td> </tr> 

<tr> <td>Adresse : </td> <td> <input type="text" name="adresse" /><br /> </td> </tr> 

<tr> <td>Ville : </td> <td> <input type="text" name="ville" /> <br />  </td> </tr> 

<tr> <td>[/contents/170-introduction-au-courrier-electronique Mail] : </td> <td> <input type="text" name="mail2" size="60" maxlength="60" /><br /> </td> </tr> 

<tr> <td>Code personnel <br>(8 caractères maxi) </td><td> <input type="password" name="code2" size="8" maxlength="8" /><br />  </td> </tr> 

<tr> <td colspan="2"><input type="submit" value="Enregistrer" name="envoi" /> </td></tr> 

 </tbody> 
</table> 

</form> 

<?php

if($_POST["envoi"]=="Enregistrer") 
 { 
 //Récupération des valeurs du formulaire 
                $nom= $_POST["nom"]; 
   $prenom= $_POST["prenom"]; 
   $age= $_POST["age"]; 
   $adresse= $_POST["adresse"]; 
   $ville= $_POST["ville"]; 
   $mail2= $_POST["mail2"]; 
   $code2= $_POST["code2"];
   
    //Sessions 
    $_SESSION['nom']=$nom; 
   $_SESSION['prenom']=$prenom; 
   $_SESSION['age']=$age; 
   $_SESSION['adresse']=$adresse; 
   $_SESSION['ville']=$ville; 
   $_SESSION['mail2']=$mail2; 
   $_SESSION['code2']=$code2; 

     echo "<script type=\"text/javascript\"> window.location.href='verifie.php'; </script>";
 }
?>

 


veirifie.php

<?php

session_start();
include('connex_db.php');

  
if (empty($nom) or empty($prenom) or empty($age) or empty($adresse) or empty($ville) or empty($mail) or empty($code))
{   echo "<script type=\"text/[/contents/577-javascript-introduction-au-langage-javascript javascript]\">alert('champs vide'); </script>";
  echo "<script type=\"text/javascript\"> window.location.href:'saisieclient.php'; </script>"; 
 
   }

else
 { 
 
  $sql1="select * from clientt where mail='".$_POST['mail']."' AND code='".$_POST['code']."'";
   $resultat=mysql_query($sql1) or die('erreur ');
 
 
 if(mysql_num_rows($resultat)==0)
{
  $sql2="insert into clientt values('','".$nom."','".$prenom."','".$age."','".$adresse."','".$ville."','".$mail."','".$code."')";
  mysql_query($sql2);

  echo "<script type=\"text/javascript\">alert('vous avez bien inscris'); </script>"; 
 
 
}
else   echo "<script type=\"text/javascript\">alert('vous etes deja inscrits'); </script>"; 


 }
?>


mon probleme est que ma page verifie.php considere toujours mes champs vide meme si je les remplis et elle m'affiche toujours l'alert champs vide !!

2 réponses

  1. Bonjour,

    Cette ligne ne fait que te réddiriger vers verifie.php mais sans prendre en compte ce que t'as écrit dans ton formulaire.
    echo "<script type=\"text/javascript\"> window.location.href='verifie.php'; </script>";


    Il faudrait plutot

    $donnees = "?nom=".$nom;
    $donnees .="&prenom="$prenom;
    $donnees .= "&age=".$age;
    $donnees .= "&adresse=".$adresse;
    $donnees .= "&ville=".$ville;
    $donnees .= "&mail2=".$mail2;
    $donnees .= "&code2=".$code2;

    echo "echo "<script type=\"text/javascript\"> window.location.href='verifie.php'".$donnees."; </script>";


    Ensuite dans ta verifie.php tu fais
    $nom = $_GET['nom'];
    $prenom = $_GET['prenom'];

    ...etc
    0
    1. Modérateur
      Bonjour,

      Tu fais appel à ta seconde page via une redirection Javascript ...
      Les Variables POST ne sont alors pas transmises ...

      Le plus simple :

      Soit tu mets TOUT dans une seule PAGE.. soit tu redirige ton FORM directement vers ta seconde page.. et tu y fais la récupération des variables post.

      Pour ma part...je prendrais le premier choix.

      Par exemple :
      <?php
      session_start(); 
      
      //--------------------------------------------------------------------------------------------------------
      // FONCTIONS
      //--------------------------------------------------------------------------------------------------------
      function getPostValue($postName,$defaultValue=''){
       return isset($_POST[$postName])?$_POST[$postName]:$defaultValue;
      }
      
      function verifInsertUser($nom,$prenom,$age,$adresse,$ville,$mail,$code){
        include('connex_db.php');
       if (empty($nom) or empty($prenom) or empty($age) or empty($adresse) or empty($ville) or empty($mail) or empty($code)){ 
        echo "<script type=\"text/[/contents/577-javascript-introduction-au-langage-javascript javascript]\">alert('champs vide'); </script>";
        echo "<script type=\"text/javascript\"> window.location.href:'saisieclient.php'; </script>"; 
       }else { 
        $sql1="SELECT * 
           FROM clientt 
           WHERE mail='".$_POST['mail']."' 
           AND code='".$_POST['code']."'";
        $resultat=mysql_query($sql1) or die('erreur :<br>'.$sql1);
        
        if(mysql_num_rows($resultat)==0){
         $sql2="INSERT into clientt 
            VALUES('','".$nom."','".$prenom."','".$age."','".$adresse."','".$ville."','".$mail."','".$code."')";
        mysql_query($sql2) or die('Erreur :<br>'.$sql2);
        echo "<script type=\"text/javascript\">alert('vous avez bien inscris'); </script>";  
       }else{
        echo "<script type=\"text/javascript\">alert('vous etes deja inscrits'); </script>"; 
       }
      }
      
      //--------------------------------------------------------------------------------------------------------
      // Traitement du "Submit" 
      //--------------------------------------------------------------------------------------------------------
      if(isset($_POST["envoi"]) && $_POST["envoi"]=="Enregistrer") { 
       //Récupération des valeurs du formulaire 
       $nom   = getPostValue("nom"); 
       $prenom  = getPostValue("prenom"); 
       $age   = getPostValue("age"); 
       $adresse = getPostValue("adresse"); 
       $ville  = getPostValue("ville"); 
       $mail2  = getPostValue("mail2"); 
       $code2  = getPostValue("code2");
          
       //Sessions 
       $_SESSION['nom']=$nom; 
       $_SESSION['prenom']=$prenom; 
       $_SESSION['age']=$age; 
       $_SESSION['adresse']=$adresse; 
       $_SESSION['ville']=$ville; 
       $_SESSION['mail2']=$mail2; 
        $_SESSION['code2']=$code2; 
        echo "<script type=\"text/javascript\"> window.location.href='verifie.php'; </script>";
      }
      
      
      ?>
      <form action="" method="post"> 
      <table> 
       <tbody> 
        <tr> <td>Nom : </td> <td> <input type="text" name="nom" size="40" maxlength="40" /><br /> </td> </tr> 
        <tr> <td>Prénom : </td> <td> <input type="text" name="prenom" size="40" maxlength="40" /><br />  </td> </tr> 
        <tr> <td>Age : </td> <td> <input type="text" name="age" size="10" maxlength="2" /><br /> </td> </tr> 
        <tr> <td>Adresse : </td> <td> <input type="text" name="adresse" /><br /> </td> </tr> 
        <tr> <td>Ville : </td> <td> <input type="text" name="ville" /> <br />  </td> </tr> 
        <tr> <td>Mail : </td> <td> <input type="text" name="mail2" size="60" maxlength="60" /><br /> </td> </tr> 
        <tr> <td>Code personnel <br>(8 caractères maxi) </td><td> <input type="password" name="code2" size="8" maxlength="8" /><br />  </td> </tr> 
        <tr> <td colspan="2"><input type="submit" value="Enregistrer" name="envoi" /> </td></tr> 
       </tbody> 
      </table> 
      
      </form> 
      


      Avant de poser une question, merci de lire la charte du site.
      Cordialement, Jordane
      1
      1. Modérateur
        Ou la seconde méthode:

        Ton formulaire HTML : saisieclient.php
        <?php
        session_start(); ?>
        <form action="veirifie.php" method="post"> 
        <table> 
        <tbody> 
        <tr> <td>Nom : </td> <td> <input type="text" name="nom" size="40" maxlength="40" /><br /> </td> </tr> 
        
        <tr> <td>Prénom : </td> <td> <input type="text" name="prenom" size="40" maxlength="40" /><br />  </td> </tr> 
        
        <tr> <td>Age : </td> <td> <input type="text" name="age" size="10" maxlength="2" /><br /> </td> </tr> 
        
        <tr> <td>Adresse : </td> <td> <input type="text" name="adresse" /><br /> </td> </tr> 
        
        <tr> <td>Ville : </td> <td> <input type="text" name="ville" /> <br />  </td> </tr> 
        
        <tr> <td>[/contents/170-introduction-au-courrier-electronique Mail] : </td> <td> <input type="text" name="mail2" size="60" maxlength="60" /><br /> </td> </tr> 
        
        <tr> <td>Code personnel <br>(8 caractères maxi) </td><td> <input type="password" name="code2" size="8" maxlength="8" /><br />  </td> </tr> 
        
        <tr> <td colspan="2"><input type="submit" value="Enregistrer" name="envoi" /> </td></tr> 
        
         </tbody> 
        </table> 
        
        </form> 
        


        Ta page: veirifie.php
        
        
        
        <?php
        session_start();
        include('connex_db.php');
        
        if($_POST["envoi"]=="Enregistrer") 
         { 
         //Récupération des valeurs du formulaire 
                        $nom= $_POST["nom"]; 
           $prenom= $_POST["prenom"]; 
           $age= $_POST["age"]; 
           $adresse= $_POST["adresse"]; 
           $ville= $_POST["ville"]; 
           $mail2= $_POST["mail2"]; 
           $code2= $_POST["code2"];
           
            //Sessions 
            $_SESSION['nom']=$nom; 
           $_SESSION['prenom']=$prenom; 
           $_SESSION['age']=$age; 
           $_SESSION['adresse']=$adresse; 
           $_SESSION['ville']=$ville; 
           $_SESSION['mail2']=$mail2; 
           $_SESSION['code2']=$code2; 
        
             
        if (empty($nom) or empty($prenom) or empty($age) or empty($adresse) or empty($ville) or empty($mail) or empty($code)) {  
          echo "<script type=\"text/[/contents/577-javascript-introduction-au-langage-javascript javascript]\">alert('champs vide'); </script>";
          echo "<script type=\"text/javascript\"> window.location.href:'saisieclient.php'; </script>"; 
         
        } else  { 
         
          $sql1="select * from clientt where mail='".$_POST['mail']."' AND code='".$_POST['code']."'";
          $resultat=mysql_query($sql1) or die('erreur ');
          
         if(mysql_num_rows($resultat)==0) {
          $sql2="insert into clientt values('','".$nom."','".$prenom."','".$age."','".$adresse."','".$ville."','".$mail."','".$code."')";
          mysql_query($sql2);
          echo "<script type=\"text/javascript\">alert('vous avez bien inscris'); </script>";  
        }else{
           echo "<script type=\"text/javascript\">alert('vous etes deja inscrits'); </script>"; 
         }
        }
        ?>
        
        
        0