PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Re : Forum Général PHP » PDO - SELECT ... WHERE IN checkboxes[] + multiselect[] » 11-02-2015 09:14:52

Kayakeuse a écrit :

Bonjour,

Après des HEURES de recherches sur le WORLD WIDE web et de tests, restées vains, je vous pose la question :

#2 Re : Forum Général PHP » PDO - SELECT ... WHERE IN checkboxes[] + multiselect[] » 11-02-2015 09:14:52

J'ai passé l'après-midi sur StackOverFlow ... et j'ai déjà cherché des heures avant de poster , et ce link évidemment je l'ai vu 1000 fois, et l'ai testé en vain

#3 Re : Forum Général PHP » PDO - SELECT ... WHERE IN checkboxes[] + multiselect[] » 11-02-2015 09:14:52

Mais MmeDébile t'as pas mieux à faire, de plus intelligent ??????

-@Tof73, Merci pour ta réponse, je viens juste de recevoir la notification - 1 heure après ton post apparemment....

Je n'ai pas été très honnête, en voulant faire court je n'ai pas posté tout mon code. Erreur grossière de ma part. Faire court pour ne pas rebuter n'est pas une bonne idée...
Lorsque je renseigne le champ job_intitule ou alors le champ job_keyword, mes requêtes se passent bien : je récupère dans mon div les emplois correspondants à ma recherche.
Mais je choisis une recherche par secteur (multiselect name='secteur_seached[]') ou par type_de_contrat (checkboxes name='type_de_contrat[]'), rien ne s'affiche.

J'espère que tu sauras trouver mon erreur, en fait j'y connais rien en PDO, moi qui croyait que c'était aussi simple que mysql_query...

MERCI

var_dump($secteur_searched) retourne (1,2,10,50,56000), bref toutes les options values sélectionnées
idem sur var_dump($type_de_contrat) qui retourne (CDI,CDD,etc)

var_dump($_REQUEST)
array (size=5)
  'job_searched' => string '' (length=0)
  'job_keyword' => string '' (length=0)
  'secteur_searched' =>
    array (size=7)
      0 => string '1' (length=1)
      1 => string '2' (length=1)
      2 => string '3' (length=1)
      3 => string '4' (length=1)
      4 => string '5' (length=1)
      5 => string '6' (length=1)
      6 => string '13' (length=2)
  'type_de_contrat' =>
    array (size=2)
      0 => string 'CDI' (length=3)
      1 => string 'CDD' (length=3)
  'submit_search' => string 'VALIDER' (length=7)


try{
$query =  "SELECT * FROM marinterim_job_offers j
          JOIN marimmo_villes v ON v.ville_id =j.job_ville  ";
 $where = array();
 $param = array();
 
  if (!empty($_REQUEST['job_searched']))
     {  $where[] = "j.job_intitule=:job_intitule ";
        $param[':job_intitule'] = $_REQUEST['job_searched'];
     }
 
 if (!empty($_REQUEST['job_keyword']))
    { $where[] =  " j.job_descriptif LIKE CONCAT('%', :job_descriptif, '%') " ;
      $param[':job_descriptif'] = $_REQUEST['job_keyword'];
    }
 
 $secteur_searched="";
 if (!empty($_REQUEST['secteur_searched']) AND is_array($_REQUEST['secteur_searched']))
    { foreach ($_REQUEST["secteur_searched"] as $selectedOption)
      $secteur_searched.=$selectedOption.",";  
  }
 if ($secteur_searched)
     { $secteur_searched = rtrim($secteur_searched, ',');
    $where[] = "j.job_secteur IN (:job_secteur) " ;
    $param[':job_secteur']= $secteur_searched; // var_dump($secteur_searched);
   }
   
 $type_de_contrat="";      
 if(!empty($_REQUEST['type_de_contrat']) AND count($_REQUEST['type_de_contrat']) > 0 )
   {foreach ($_REQUEST["type_de_contrat"] as $selectedCheckbox)
     $type_de_contrat.=$selectedCheckbox.",";  
  }
 if ($type_de_contrat)
     { $type_de_contrat = rtrim($type_de_contrat, ',');
    $where[]=  "j.job_contrat IN (:job_contrat) " ;
  $param[':job_contrat']= $type_de_contrat; var_dump($type_de_contrat);
   }    
   
if (!empty($where))
   {
   $query.= ' WHERE ' . implode(' AND ', $where); // WHERE crite1 AND critere2 AND critere 3,
   }

 $query.= " ORDER BY j.job_date_insertion DESC";  echo $query;

$sth =$marInterim ->prepare($query);
$sth->execute($param);
//print_r($sth->errorInfo());

$compte = $sth->fetchAll();
$nb_resultats = count($compte);
$errors['nb_resultats_recherche'] = $nb_resultats; // ok

/********************/
   if ( !empty($_REQUEST['afficher_x_resultats']))
    { $per_page=$_REQUEST['afficher_x_resultats'];
    }
 else {$per_page=10; }


/* Results per page */
$nb_pages = ceil($nb_resultats/$per_page);  
$current_page = isset($_REQUEST['page']) && ($_REQUEST['page'] > 0) && ($_REQUEST['page'] <= $nb_pages) ? $_REQUEST['page'] : 1;
$start = ($current_page-1)*$per_page; //  $param[':start']= $start;

$query2= $query." LIMIT $start,$per_page ";
 echo '<br /> $query2 =  '.$query2;

$sth2 =$marInterim ->prepare($query2);  
$sth2-> execute($param);
//print_r($sth2->errorInfo());


 while($datos= $sth2->fetch(PDO::FETCH_ASSOC))
      { $en_date_insertion=$datos['job_date_insertion'];   
     $explode_insertion= explode("-", $en_date_insertion);
     $date_insertion_fr = $explode_insertion[2]."-".$explode_insertion[1]."-".$explode_insertion[0];     
     $job_id= $datos['job_id'];
     $job_intitule= strtoupper($datos['job_intitule']);
     $job_ville = $datos['ville_nom'];
     $job_cp = $datos['cp'];
           
    echo "
                       <div class='offers btns'>
                       <a class='link_vers_offre' href='job_offer_detail.php?job_id=$job_id'>
                       <table id='table_liste_des_offres'>
                       <tr>
                       <td class='liste_intitule'> " .$job_intitule." </td>
                       <td class='liste_ref'>Offre n°" .$job_id."   du   ".$date_insertion_fr ." </td>
                       <td class='liste_ville'> ".$job_cp. " ".$job_ville." </td>
                       </tr>
                       </table>
                       </a>
                       </div>
                           ";
             
    }
 
} catch(Exception $e)
        { exit('<b>Catched exception at line '. $e->getLine() .' :</b> '. $e->getMessage());
        }
}

 

#5 Forum Général PHP » PDO - SELECT ... WHERE IN checkboxes[] + multiselect[] » 11-02-2015 09:14:52

Kayakeuse
Réponses : 8

Bonjour,

Après des HEURES de recherches sur le WORLD WIDE web et de tests, restées vains, je vous pose la question :
Tout le code absent qui se trouve avant et après fonctionne, mais je bug sur mon multiselect[] et mes checkboxes[]
Merci beaucoup pour votre aide, Dieu ou qui que ce soit d'autre vous le rendra ! smile


 if (!empty($_REQUEST['secteur_searched']) AND is_array($_REQUEST['secteur_searched']))
    { $secteur_searched=implode(',',$_REQUEST['secteur_searched']);
    $where[] = "j.job_secteur IN (:job_secteur) " ;
    $param[':job_secteur']= $secteur_searched;  var_dump($secteur_searched);
  }

 if(!empty($_REQUEST['type_de_contrat']) AND count($_REQUEST['type_de_contrat']) > 0 )
   {$type_de_contrat = count($_REQUEST["type_de_contrat"]) ? implode(",",$_REQUEST["type_de_contrat"]) : '';
    $where[]=  "j.job_contrat IN (:job_contrat) " ;
    $param[':job_contrat']= $type_de_contrat; var_dump($type_de_contrat);
   }    
   
if (!empty($where))
   {
   $query.= ' WHERE ' . implode(' AND ', $where);
   }

 $query.= " ORDER BY j.job_date_insertion DESC";
 
$sth =$marInterim ->prepare($query);
$sth->execute($param);

 

#6 Re : Forum Général PHP » Formulaire: Messages d'erreur qui ne s'affichent pas si champ = empty. » 22-09-2013 09:47:08

Bonjour,

Merci pour votre réponse. Entre temps j'ai solutionné mes problèmes...

Bon week-end à vous.

#7 Re : Forum Général PHP » if (! preg_match () $email)) --> email incorrect !?!? » 15-09-2013 11:59:24

Bon merci pour vos réponses [...]...
J'ai finalement réussi à faire accepter mes passwords en supprimant ^ et $ de ma regex preg_match $email
Si ça peut aider quelqu'un...

#8 Forum Général PHP » Formulaire: Messages d'erreur qui ne s'affichent pas si champ = empty. » 22-09-2013 09:47:08

Kayakeuse
Réponses : 3

Hello !
Me revoila avec ma 3eme question, séparée des autres.

Si je ne remplis pas tous les champs obligatoires de mon form, les messages d'erreur correspondants, du type "Veuillez renseigner votre adresse, ou votre ville, etc" ne s'affichent pas  pas tous là où requis !
Si je ne remplis pas ma ville, après avoir quand-même tenté d'envoyer mon formulaire, php ne me dit pas "Veuillez renseigner votre ville".  Pourquoi????????
Seulement les 3 derniers messages d'erreur s'affichent, c'est à dire : "Veuillez renseigner votre tel", + "email incorrect" (alors qu'il est correct tout comme me semble-t-il ma regex), + "Veuillez renseigner votre pays". Mais les autres messages d'erreur, ben je les attends tjrs!

Et tant que j'y suis, lorsque je click dans l'un des champs de mon formulaires pour y rentrer des infos, le text- ne s'aligne pas à gauche comme précisé dans mon css... Une idée ??

Merci beaucoup parce que je deviens folle ! je cherche depuis hier réponses à mes questions on the web, et en revérifiant et réécrivant mes codes qui marchent à la perfection sur des sites que j'ai déjà réalisé, sauf là sur mon site en cours.. Je comprends pas!. Merci wink




<?php


if (!empty($_POST)) {

                     
   extract($_POST);      // ici on extrait toutes les champs du formulaires
   $valid = true;        .

 
  if (empty($pseudo))
     {$valid=false;
    $erreurpseudo = "Pseudo requis";
     }
  if (strlen($pseudo)<6)
     {$valid=false;
    $erreurpseudo = "6 caractères minimum";
     }
     

 
  if (empty($password))
     {$valid=false;
    $erreurpassword = "Mot de passe requis";
     }
 
  if (strlen($password) <6 )
     {$valid=false;
    $erreurpassword = "6 caractères minimum";
     }
     
  if (empty($repeatpassword))
     {$valid=false;
    $erreurpassword2 = "Répétez votre mot de passe";
     }
 
  if ($password != $repeatpassword)
     {$valid=false;
    $erreurpassword2 = "Les mots de passe doivent être identiques";
     }else{$password=md5($password);}
     
     
  if (empty($civilite))
     {$valid=false;
    $erreurcivilite = "Veuillez indiquer votre civilité";
     }
 
  if (empty($nom))
     {$valid=false;
    $erreurnom = "Veuillez indiquer votre nom";
     }
 
  if (empty($prenom))
     {$valid=false;
    $erreurprenom =  "Veuillez indiquer votre prénom";
     }
     
  if (empty($adresse))
     {$valid=false;
    $erreuradresse = "Veuillez indiquer votre adresse";
     }
     
  if (empty($cp))
     {$valid=false;
    $erreurcp = "Veuillez indiquer votre code postal";
     }
       
    if (empty($ville))
       {$valid = false;
        $erreurville = "Veuillez indiquer votre ville";
       }

  if (empty($pays))
     {$valid=false;
    $erreurpays = "Veuillez indiquer votre pays";
     }
     
    if (empty($email))
       {$valid=false;
        $erreuremail = "Veuillez indiquer votre adresse e-mail";
       }
     
  if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}$#", $email))  
     {$valid=false;
     $erreuremail = "Votre adresse e-mail n'est pas valide";
     }
     
  if (empty($tel))
       {$valid=false;
        $erreurtel = "Veuillez indiquer votre numéro de téléphone";
       }
  if (!preg_match(" '[0-9]{10,14}' ", $tel))  
     {$valid=false;
      $erreurtel = "Format requis: chiffres sans espace";
     }  
     


    if ($valid)
     { try                  {$bdd = new PDO('mysql:host=localhost; dbname=madb', 'MonPseudo', 'MonPassword');}
       catch (Exception $e) {die ('Erreur : '.$e -> getMessage() );}
     
     $query = mysql_query ("INSERT INTO users VALUES ( '', '$pseudo', '$password', '$civilite', '$nom', '$prenom', '$societe', '$adresse', '$adresse2', '$cp', '$ville', '$pays', '$email', '$tel') ") or die(mysql_error() );
         
    die ('Inscription terminée. Vous pouvez maintenant <a href="connexion.php"> vous connecter. </a> ');

}  }
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd[/url]">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="pivoine.css" />
<script type="text/javascript" src="js/jquery-1.10.2.min.js"> </script>
<script type="text/javascript" src="js/pivoine.js"> </script>
<title>Pivoine  </title>
</head>

<body id="body_2">
<div class="head"> Pivoine  </div>

<div id="menu">
  <ul id="onglets">
    <li><a href="index.php"> Accueil </a></li>
    <li><a href="boutique_en_ligne.php"> Boutique en ligne </a></li>
    <li  class="active"><a href="inscription.php"> Créer un compte </a></li>
    <li><a href="connexion.php"> Se connecter </a></li>
    <li><a href="panier.php"> Mon compte </a></li>
    <li><a href="panier.php"> Mon panier </a></li>
    <li><a href="map.php"> Contact </a></li>
  </ul>
</div>

<div class="enregistrement">
<p class="inscription_titre"> Créer mon compte </p>  

 


<form action="inscription.php" method="post">

<fieldset id="identifiants_registration">
 <legend > Mes identifiants </legend>    
   
    <label for="pseudo" id="label_pseudo"> Pseudo : *</label><br />
    <input type="text" name="pseudo" id="pseudo_connexion" placeholder=" 6 caractères minimum" size="30" maxlength="70" tabindex="10"
    value=" <?php if(isset($pseudo)) echo $pseudo; ?> " />  
    <span class="error_message"> <?php if(isset($erreurpseudo)) echo $erreurpseudo;  ?> </span>
    <br />
    <br />
   
    <label for="password" id="label_pass"> Mot de passe : *</label> <br />
    <input type="password" name="password" id="password_connexion" placeholder=" 6 caractères minimum" size="30" maxlength="70" tabindex="20"/>    
    <span class="error_message"> <?php if(isset($erreurpassword)) echo $erreurpassword; ?> </span>
    <br />
    <br />
     
    <label for="password" id="label_pass2"> Retapez votre mot de passe : * </label>   <br />
    <input type="password" name="repeatpassword" id="password_connexion" size="30" maxlength="70" tabindex="30" />    
    <span class="error_message"> <?php if(isset($erreurpassword2)) echo $erreurpassword2;  ?> </span>
                                       <br /><br />
</fieldset>
   
   
 <fieldset id="coordonnees_registration">
    <legend> Mon adresse de livraison </legend>    
 
    <label for="civilite"  id="label_civilite" > Civilit&eacute; : * </label><br />
    <select name="civilite" id="civilite" tabindex="40" value=""/>
    <option value="">  </option>
    <option value="Mlle" <?php if(isset($civilite)) echo "selected='selected'"; ?>> Mlle </option>
    <option value="Mme" <?php if(isset($civilite)) echo "selected='selected'"; ?>> Mme </option>
    <option value="Mr" <?php if(isset($civilite)) echo "selected='selected'"; ?>> Mr </option>
    </select>
    <span class="error_message"> <?php if (isset($erreurcivilite)) echo $erreurcivilite ; ?> </span>
    <br /><br />
 
 
    <label for="nom" id="label_nom"> Nom : * </label><br />
    <input type="text" name="nom" id="nom" size="30" maxlength="70" tabindex="60" value=" <?php if(isset($nom)) echo $nom; ?> "/>
    <span class="error_message"> <?php if(isset($erreurnom)) echo $erreurnom ; ?> </span>  
    <br />
    <br />
    <label for="prenom" id="label_prenom"> Prénom : *</label> <br />  
    <input type="text" name="prenom" id="prenom" size="30" maxlength="70" tabindex="70" value=" <?php if (isset($prenom)) echo $prenom; ?> "/>
    <span class="error_message"> <?php if(isset($erreurprenom)) echo $erreurprenom ; ?> </span>    <br /><br />

    <label for="societe" id="label_societe"> Société :</label> <br />  
    <input type="text" name="societe" id="societe" size="30" maxlength="70" tabindex="75" value=" <?php if (isset($societe)) echo $societe; ?> "/>
    <span class="error_message"> <?php if(isset($erreursociete)) echo $erreursociete ; ?> </span>    <br /><br />
       
    <label for="adresse" id="label_adresse"> Adresse : * </label>  <br />  
    <input type="text" name="adresse" id="adresse" size="30" maxlength="100" tabindex="80" value=" <?php if (isset($adresse)) echo $adresse; ?> "/>
    <span class="error_message"> <?php if(isset($erreuradresse)) echo $erreuradresse ; ?> </span>   <br /> <br />
   
    <label for="adresse" id="label_adresse2"> Complément d'adresse : </label>  <br />
    <input type="text" name="adresse2" id="adresse2" size="30" maxlength="100" tabindex="90" value=" <?php if(isset($adresse2)) echo $adresse2; ?> "/>  <br /><br />
     
    <label for="cp" id="label_cp"> Code postal : * </label>  <br />  
    <input type="text" name="cp" id="cp" size="20" maxlength="30" tabindex="100" value=" <?php if(isset($cp)) echo $cp; ?> "/>
    <span class="error_message"> <?php if(isset($erreurcp)) echo $erreurcp ; ?> </span>   <br /><br />
   
    <label for="ville" id="label_ville"> Ville : * </label>  <br />  
    <input type="text" name="ville" id="ville" size="30" maxlength="100" tabindex="110" value=" <?php if (isset($ville)) echo $ville ; ?> " />
    <span class="error_message"> <?php if(isset($erreurville)) echo $erreurville ; ?> </span>   <br /><br />
   
    <label for="cpays" id="label_pays"> Pays : * </label>  <br />  
    <input type="text" name="pays" id="pays" size="30" maxlength="100" tabindex="120" value="<?php if (isset($pays)) echo $pays; ?>" />
    <span class="error_message"> <?php if(isset($erreurpays)) echo $erreurpays; ?> </span>    <br /><br />
   
   
     <label for="email" id="label_email"> Email : * </label> <br />
    <input type="text" name="email" id="email" size="30" maxlength="70" tabindex="130"  value=" <?php if (isset($email)) echo $email; ?> " />
    <span class="error_message"> <?php if(isset($erreuremail)) echo $erreuremail;?> </span>
                                      <br /><br />
   
    <label for="tel" id="label_tel"> Téléphone : *</label> <br />
    <input type="text" name="tel" id="tel" placeholder=" 10 chiffres sans espace" size="30" maxlength="70" tabindex="140" value=" <?php if (isset($tel)) echo $tel; ?> " />   <span class="error_message"> <?php if (isset($erreurtel)) echo $erreurtel;  ?></span>


      <br /><br />
     <input type="checkbox" name="check_livfact" id="check_livfact"   tabindex="160" />
     <label for="livraisonfacturation" id="label_livraisonfacturation"> Utiliser mon adresse de livraison comme adresse de facturation</label>
     <br /><br />
     
     <input type="submit" name="submit" id="submit" value="Envoyer" tabindex="150" />
 
     <br /><br /><br />
     

  </fieldset>

<div id="div_coordonnees_facturation">
 <fieldset id="coordonnees_facturation">
    <legend> Mon adresse de facturation - si différente de l'adresse de livraison </legend>   
 
   
   <label for="civilite_facturation"  id="label_civilite_facturation" > Civilit&eacute; : * </label><br />
    <select name="civilite_facturation" id="civilite" tabindex="170"/>
    <option value="">  </option>
    <option value="Mlle" <?php if(isset($civilite_facturation)) echo "selected='selected'"; ?>> Mlle </option>
    <option value="Mme" <?php if(isset($civilite_facturation)) echo "selected='selected'"; ?>> Mme </option>
    <option value="Mr" <?php if(isset($civilite_facturation)) echo "selected='selected'"; ?>> Mr </option>
    </select>
    <span class="error_message"> <?php if(isset($erreurcivilite)) echo $erreurcivilite; ?> </span>
    <br /><br />
 
    <label for="nom" id="label_nom_facturation"> Nom : * </label><br />
    <input type="text" name="nom_facturation" id="nom" size="30" maxlength="70"  tabindex="180"  
    value=" <?php if(isset($nom_facturation)) echo $nom_facturation; ?> "  />  
    <br />
    <br />
    <label for="prenom" id="label_prenom_facturation"> Prénom : *</label> <br />  
    <input type="text" name="prenom_facturation" id="prenom" size="30" maxlength="70" tabindex="190"
    value=" <?php if(isset($prenom_facturation)) echo $prenom_facturation; ?> " />    <br /><br />

    <label for="societe" id="label_societe_facturation"> Société :</label> <br />  
    <input type="text" name="societe_facturation" id="societe" size="30" maxlength="70" tabindex="200"
    value=" <?php if(isset($societe_facturation)) echo $societe_facturation; ?> "/>    <br /><br />
       
    <label for="adresse" id="label_adresse_facturation"> Adresse : * </label>  <br />  
    <input type="text" name="adresse_facturation" id="adresse" size="30" maxlength="100" tabindex="210"
    value=" <?php if(isset($adresse_facturation)) echo $adresse_facturation; ?> "/>    <br /> <br />
   
    <label for="adresse" id="label_adresse2_facturation"> Complément d'adresse : </label>  <br />
    <input type="text" name="adresse2_facturation" id="adresse2" size="30" maxlength="100" tabindex="220"
     value=" <?php if(isset($adresse2_facturation)) echo $adresse2_facturation; ?> "/>  <br /><br />
     
    <label for="cp" id="label_cp_facturation"> Code postal : * </label>  <br />  
    <input type="text" name="cp_facturation" id="cp" size="20" maxlength="30" tabindex="230"
     value=" <?php if(isset($cp_facturation)) echo $cp_facturation; ?> "/>    <br /><br />
   
    <label for="ville" id="label_ville_facturation"> Ville : * </label>  <br />  
    <input type="text" name="ville_facturation" id="ville" size="30" maxlength="100" tabindex="240"
     value=" <?php if(isset($ville_facturation)) echo $ville_facturation; ?> "/>    <br /><br />
   
    <label for="cpays" id="label_pays_facturation"> Pays : * </label>  <br />  
    <input type="text" name="pays_facturation" id="pays" size="30" maxlength="100" tabindex="250"
     value=" <?php if(isset($pays_facturation)) echo $pays_facturation; ?> "/>    <br /><br />
   
   
     <label for="email" id="label_email_facturation"> Email : * </label> <br />  
    <input type="text" name="email_facturation" id="email_facturation" size="30" maxlength="70" tabindex="260"
     value=" <?php if(isset($email_facturation)) echo $email_facturation; ?> " />    <br /><br />
   
    <label for="tel" id="label_tel_facturation"> Téléphone : *</label><br />    
    <input type="text" name="tel_facturation" id="tel" placeholder=" 10 chiffres sans espace" size="30" maxlength="70" tabindex="270"
     value=" <?php if(isset($tel_facturation)) echo $tel_facturation; ?> "/>  


 
      <br /><br />
    <input type="submit" name="submit2" id="submit2" value="Envoyer"   tabindex="280" />


  </fieldset>
</div>
</form>

</div>
</body>
</html>
 

#9 Forum Général PHP » if (! preg_match () $email)) --> email incorrect !?!? » 15-09-2013 11:59:24

Kayakeuse
Réponses : 1

Bonjour, Hola !

Je ne comprends pas pourquoi j'ai systématiquement "email incorrect" qui s'affiche lorsque j'utilise  if (! preg_match () $email)) pour mon formulaire.
Car j'utilise la même expression dans un formulaire sur un autre de mes sites, et tout fonctionne, mais pas sur mon site actuel.. What's the f..k ?


Merci d'avance de votre aide !! Ca fait 15h environ que je cherche pourquoi et comment, que je teste avec d'autres email ! preg_match
"#^[a-z0-9\-_.]+@[a-z0-9\-_.]+\.[a-z]{2,3}$#i"   ou    '#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#' etc, mais les emails que je teste restent toujours soit-disant incorrects.

Autre question que je m'apprête à poser dans un autre thread, si je ne remplis pas tous les champs obligatoires de mon form, les messages d'erreur correspondants, du type "Veuillez renseigner votre adresse, ou votre ville, etc" ne s'affichent pas yikes ! enfin sauf les 3 derniers, c'est à dire email incorrect, tel et pays à renseigner.... Là je sèche, pourquoi pas les autres??? si je ne remplis pas ma ville, php ne me dit pas champ vide ! Pourquoi????????

Et puis, autre thread, mais je vous en parle au cas où big_smile , lorsque dans mon même form je sélectionne ma civilité = Mlle, que j'envoie le form incomplet pour vérification de l'affichage des messages d'erreur, la value qui apparait comme ayant été sélectionnée est MR !!!  Je n'y comprends plus rien !

Merci beaucoup de vos réponses, Thank you !!


<?php


if (!empty($_POST)) {

                     
   extract($_POST);      // ici on extrait toutes les champs du formulaires
   $valid = true;        .

 
  if (empty($pseudo))
     {$valid=false;
    $erreurpseudo = "Pseudo requis";
     }
  if (strlen($pseudo)<6)
     {$valid=false;
    $erreurpseudo = "6 caractères minimum";
     }
     

 
  if (empty($password))
     {$valid=false;
    $erreurpassword = "Mot de passe requis";
     }
 
  if (strlen($password) <6 )
     {$valid=false;
    $erreurpassword = "6 caractères minimum";
     }
     
  if (empty($repeatpassword))
     {$valid=false;
    $erreurpassword2 = "Répétez votre mot de passe";
     }
 
  if ($password != $repeatpassword)
     {$valid=false;
    $erreurpassword2 = "Les mots de passe doivent être identiques";
     }else{$password=md5($password);}
     
     
  if (empty($civilite))
     {$valid=false;
    $erreurcivilite = "Veuillez indiquer votre civilité";
     }
 
  if (empty($nom))
     {$valid=false;
    $erreurnom = "Veuillez indiquer votre nom";
     }
 
  if (empty($prenom))
     {$valid=false;
    $erreurprenom =  "Veuillez indiquer votre prénom";
     }
     
  if (empty($adresse))
     {$valid=false;
    $erreuradresse = "Veuillez indiquer votre adresse";
     }
     
  if (empty($cp))
     {$valid=false;
    $erreurcp = "Veuillez indiquer votre code postal";
     }
       
    if (empty($ville))
       {$valid = false;
        $erreurville = "Veuillez indiquer votre ville";
       }

  if (empty($pays))
     {$valid=false;
    $erreurpays = "Veuillez indiquer votre pays";
     }
     
    if (empty($email))
       {$valid=false;
        $erreuremail = "Veuillez indiquer votre adresse e-mail";
       }
     
  if (!preg_match("#^[a-z0-9._-]+@[a-z0-9._-]+\.[a-z]{2,4}$#", $email))  
     {$valid=false;
     $erreuremail = "Votre adresse e-mail n'est pas valide";
     }
     
  if (empty($tel))
       {$valid=false;
        $erreurtel = "Veuillez indiquer votre numéro de téléphone";
       }
  if (!preg_match(" '[0-9]{10,14}' ", $tel))  
     {$valid=false;
      $erreurtel = "Format requis: chiffres sans espace";
     }  
     


    if ($valid)
     { try                  {$bdd = new PDO('mysql:host=localhost; dbname=madb', 'MonPseudo', 'MonPassword');}
       catch (Exception $e) {die ('Erreur : '.$e -> getMessage() );}
     
     $query = mysql_query ("INSERT INTO users VALUES ( '', '$pseudo', '$password', '$civilite', '$nom', '$prenom', '$societe', '$adresse', '$adresse2', '$cp', '$ville', '$pays', '$email', '$tel') ") or die(mysql_error() );
         
    die ('Inscription terminée. Vous pouvez maintenant <a href="connexion.php"> vous connecter. </a> ');

}  }
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd[/url]">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="pivoine.css" />
<script type="text/javascript" src="js/jquery-1.10.2.min.js"> </script>
<script type="text/javascript" src="js/pivoine.js"> </script>
<title>Pivoine  </title>
</head>

<body id="body_2">
<div class="head"> Pivoine  </div>

<div id="menu">
  <ul id="onglets">
    <li><a href="index.php"> Accueil </a></li>
    <li><a href="boutique_en_ligne.php"> Boutique en ligne </a></li>
    <li  class="active"><a href="inscription.php"> Créer un compte </a></li>
    <li><a href="connexion.php"> Se connecter </a></li>
    <li><a href="panier.php"> Mon compte </a></li>
    <li><a href="panier.php"> Mon panier </a></li>
    <li><a href="map.php"> Contact </a></li>
  </ul>
</div>

<div class="enregistrement">
<p class="inscription_titre"> Créer mon compte </p>  

 


<form action="inscription.php" method="post">

<fieldset id="identifiants_registration">
 <legend > Mes identifiants </legend>    
   
    <label for="pseudo" id="label_pseudo"> Pseudo : *</label><br />
    <input type="text" name="pseudo" id="pseudo_connexion" placeholder=" 6 caractères minimum" size="30" maxlength="70" tabindex="10"
    value=" <?php if(isset($pseudo)) echo $pseudo; ?> " />  
    <span class="error_message"> <?php if(isset($erreurpseudo)) echo $erreurpseudo;  ?> </span>
    <br />
    <br />
   
    <label for="password" id="label_pass"> Mot de passe : *</label> <br />
    <input type="password" name="password" id="password_connexion" placeholder=" 6 caractères minimum" size="30" maxlength="70" tabindex="20"/>    
    <span class="error_message"> <?php if(isset($erreurpassword)) echo $erreurpassword; ?> </span>
    <br />
    <br />
     
    <label for="password" id="label_pass2"> Retapez votre mot de passe : * </label>   <br />
    <input type="password" name="repeatpassword" id="password_connexion" size="30" maxlength="70" tabindex="30" />    
    <span class="error_message"> <?php if(isset($erreurpassword2)) echo $erreurpassword2;  ?> </span>
                                       <br /><br />
</fieldset>
   
   
 <fieldset id="coordonnees_registration">
    <legend> Mon adresse de livraison </legend>    
 
    <label for="civilite"  id="label_civilite" > Civilit&eacute; : * </label><br />
    <select name="civilite" id="civilite" tabindex="40" value=""/>
    <option value="">  </option>
    <option value="Mlle" <?php if(isset($civilite)) echo "selected='selected'"; ?>> Mlle </option>
    <option value="Mme" <?php if(isset($civilite)) echo "selected='selected'"; ?>> Mme </option>
    <option value="Mr" <?php if(isset($civilite)) echo "selected='selected'"; ?>> Mr </option>
    </select>
    <span class="error_message"> <?php if (isset($erreurcivilite)) echo $erreurcivilite ; ?> </span>
    <br /><br />
 
 
    <label for="nom" id="label_nom"> Nom : * </label><br />
    <input type="text" name="nom" id="nom" size="30" maxlength="70" tabindex="60" value=" <?php if(isset($nom)) echo $nom; ?> "/>
    <span class="error_message"> <?php if(isset($erreurnom)) echo $erreurnom ; ?> </span>  
    <br />
    <br />
    <label for="prenom" id="label_prenom"> Prénom : *</label> <br />  
    <input type="text" name="prenom" id="prenom" size="30" maxlength="70" tabindex="70" value=" <?php if (isset($prenom)) echo $prenom; ?> "/>
    <span class="error_message"> <?php if(isset($erreurprenom)) echo $erreurprenom ; ?> </span>    <br /><br />

    <label for="societe" id="label_societe"> Société :</label> <br />  
    <input type="text" name="societe" id="societe" size="30" maxlength="70" tabindex="75" value=" <?php if (isset($societe)) echo $societe; ?> "/>
    <span class="error_message"> <?php if(isset($erreursociete)) echo $erreursociete ; ?> </span>    <br /><br />
       
    <label for="adresse" id="label_adresse"> Adresse : * </label>  <br />  
    <input type="text" name="adresse" id="adresse" size="30" maxlength="100" tabindex="80" value=" <?php if (isset($adresse)) echo $adresse; ?> "/>
    <span class="error_message"> <?php if(isset($erreuradresse)) echo $erreuradresse ; ?> </span>   <br /> <br />
   
    <label for="adresse" id="label_adresse2"> Complément d'adresse : </label>  <br />
    <input type="text" name="adresse2" id="adresse2" size="30" maxlength="100" tabindex="90" value=" <?php if(isset($adresse2)) echo $adresse2; ?> "/>  <br /><br />
     
    <label for="cp" id="label_cp"> Code postal : * </label>  <br />  
    <input type="text" name="cp" id="cp" size="20" maxlength="30" tabindex="100" value=" <?php if(isset($cp)) echo $cp; ?> "/>
    <span class="error_message"> <?php if(isset($erreurcp)) echo $erreurcp ; ?> </span>   <br /><br />
   
    <label for="ville" id="label_ville"> Ville : * </label>  <br />  
    <input type="text" name="ville" id="ville" size="30" maxlength="100" tabindex="110" value=" <?php if (isset($ville)) echo $ville ; ?> " />
    <span class="error_message"> <?php if(isset($erreurville)) echo $erreurville ; ?> </span>   <br /><br />
   
    <label for="cpays" id="label_pays"> Pays : * </label>  <br />  
    <input type="text" name="pays" id="pays" size="30" maxlength="100" tabindex="120" value="<?php if (isset($pays)) echo $pays; ?>" />
    <span class="error_message"> <?php if(isset($erreurpays)) echo $erreurpays; ?> </span>    <br /><br />
   
   
     <label for="email" id="label_email"> Email : * </label> <br />
    <input type="text" name="email" id="email" size="30" maxlength="70" tabindex="130"  value=" <?php if (isset($email)) echo $email; ?> " />
    <span class="error_message"> <?php if(isset($erreuremail)) echo $erreuremail;?> </span>
                                      <br /><br />
   
    <label for="tel" id="label_tel"> Téléphone : *</label> <br />
    <input type="text" name="tel" id="tel" placeholder=" 10 chiffres sans espace" size="30" maxlength="70" tabindex="140" value=" <?php if (isset($tel)) echo $tel; ?> " />   <span class="error_message"> <?php if (isset($erreurtel)) echo $erreurtel;  ?></span>


      <br /><br />
     <input type="checkbox" name="check_livfact" id="check_livfact"   tabindex="160" />
     <label for="livraisonfacturation" id="label_livraisonfacturation"> Utiliser mon adresse de livraison comme adresse de facturation</label>
     <br /><br />
     
     <input type="submit" name="submit" id="submit" value="Envoyer" tabindex="150" />
 
     <br /><br /><br />
     

  </fieldset>

<div id="div_coordonnees_facturation">
 <fieldset id="coordonnees_facturation">
    <legend> Mon adresse de facturation - si différente de l'adresse de livraison </legend>   
 
   
   <label for="civilite_facturation"  id="label_civilite_facturation" > Civilit&eacute; : * </label><br />
    <select name="civilite_facturation" id="civilite" tabindex="170"/>
    <option value="">  </option>
    <option value="Mlle" <?php if(isset($civilite_facturation)) echo "selected='selected'"; ?>> Mlle </option>
    <option value="Mme" <?php if(isset($civilite_facturation)) echo "selected='selected'"; ?>> Mme </option>
    <option value="Mr" <?php if(isset($civilite_facturation)) echo "selected='selected'"; ?>> Mr </option>
    </select>
    <span class="error_message"> <?php if(isset($erreurcivilite)) echo $erreurcivilite; ?> </span>
    <br /><br />
 
    <label for="nom" id="label_nom_facturation"> Nom : * </label><br />
    <input type="text" name="nom_facturation" id="nom" size="30" maxlength="70"  tabindex="180"  
    value=" <?php if(isset($nom_facturation)) echo $nom_facturation; ?> "  />  
    <br />
    <br />
    <label for="prenom" id="label_prenom_facturation"> Prénom : *</label> <br />  
    <input type="text" name="prenom_facturation" id="prenom" size="30" maxlength="70" tabindex="190"
    value=" <?php if(isset($prenom_facturation)) echo $prenom_facturation; ?> " />    <br /><br />

    <label for="societe" id="label_societe_facturation"> Société :</label> <br />  
    <input type="text" name="societe_facturation" id="societe" size="30" maxlength="70" tabindex="200"
    value=" <?php if(isset($societe_facturation)) echo $societe_facturation; ?> "/>    <br /><br />
       
    <label for="adresse" id="label_adresse_facturation"> Adresse : * </label>  <br />  
    <input type="text" name="adresse_facturation" id="adresse" size="30" maxlength="100" tabindex="210"
    value=" <?php if(isset($adresse_facturation)) echo $adresse_facturation; ?> "/>    <br /> <br />
   
    <label for="adresse" id="label_adresse2_facturation"> Complément d'adresse : </label>  <br />
    <input type="text" name="adresse2_facturation" id="adresse2" size="30" maxlength="100" tabindex="220"
     value=" <?php if(isset($adresse2_facturation)) echo $adresse2_facturation; ?> "/>  <br /><br />
     
    <label for="cp" id="label_cp_facturation"> Code postal : * </label>  <br />  
    <input type="text" name="cp_facturation" id="cp" size="20" maxlength="30" tabindex="230"
     value=" <?php if(isset($cp_facturation)) echo $cp_facturation; ?> "/>    <br /><br />
   
    <label for="ville" id="label_ville_facturation"> Ville : * </label>  <br />  
    <input type="text" name="ville_facturation" id="ville" size="30" maxlength="100" tabindex="240"
     value=" <?php if(isset($ville_facturation)) echo $ville_facturation; ?> "/>    <br /><br />
   
    <label for="cpays" id="label_pays_facturation"> Pays : * </label>  <br />  
    <input type="text" name="pays_facturation" id="pays" size="30" maxlength="100" tabindex="250"
     value=" <?php if(isset($pays_facturation)) echo $pays_facturation; ?> "/>    <br /><br />
   
   
     <label for="email" id="label_email_facturation"> Email : * </label> <br />  
    <input type="text" name="email_facturation" id="email_facturation" size="30" maxlength="70" tabindex="260"
     value=" <?php if(isset($email_facturation)) echo $email_facturation; ?> " />    <br /><br />
   
    <label for="tel" id="label_tel_facturation"> Téléphone : *</label><br />    
    <input type="text" name="tel_facturation" id="tel" placeholder=" 10 chiffres sans espace" size="30" maxlength="70" tabindex="270"
     value=" <?php if(isset($tel_facturation)) echo $tel_facturation; ?> "/>  


 
      <br /><br />
    <input type="submit" name="submit2" id="submit2" value="Envoyer"   tabindex="280" />


  </fieldset>
</div>
</form>

</div>
</body>
</html>

 

.enregistrement {float:right; width:790px; height:auto; margin-right:30px; background-color:#000000; margin-top:30px; margin-bottom:50px; padding-bottom:70px;}
.inscription_titre {color:#FF3366; text-decoration:underline; font-weight:bold; font-size:1.2em; font-family:Arial, Helvetica, sans-serif; margin-top:15px !important; margin-top:35px; margin-left:20px;}


legend  {color:#FF9966; font-size:90%; font-family:Arial, Helvetica, sans-serif;}
fieldset#identifiants_registration {border:solid 2px #ff9966; width:680px; height:210px; margin-top:50px; margin-left:30px; padding-top:25px; padding-left:30px;}
fieldset#coordonnees_registration {border:solid 2px #ff9966; width:680px; height:767px;  margin-left:30px; margin-top:20px;  padding-top:25px; padding-left:30px; }
fieldset#coordonnees_facturation {border:solid 2px #ff9966; width:680px; height:735px;  margin-left:30px; margin-top:20px;  padding-top:25px; padding-left:30px; }

#div_coordonnees_facturation { width:680px; height:735px;}

#label_pseudo, #label_pass, #label_pass2 {color:#FF9966; text-decoration:none; font-size:90%; font-family:Arial, Helvetica, sans-serif; }

#label_civilite, #label_nom, #label_prenom, #label_societe, #label_adresse,#label_adresse2, #label_cp, #label_ville, #label_pays, #label_tel, #label_email, #label_livraisonfacturation,
#label_civilite_facturation, #label_nom_facturation , #label_prenom_facturation , #label_societe_facturation , #label_adresse_facturation,#label_adresse2_facturation, #label_cp_facturation, #label_ville_facturation, #label_pays_facturation, #label_tel_facturation, #label_email_facturation {color:#FF9966; text-decoration:none; font-size:90%; font-family:Arial, Helvetica, sans-serif;}

#pseudo, #password, #password2, #civilite, #nom, #prenom, #societe, #adresse, #adresse2, #cp, #ville, #pays, #tel, #email,  
#civilite_facturation, #nom_facturation, #prenom_facturation, #societe_facturation, #adresse_facturation, #adresse2_facturation, #cp_facturation, #ville_facturation, #pays_facturation, #tel_facturation, #email_facturation
{text-align:left; padding-left:0px;  margin-left:0px;}

#submit, #submit2 {color:#000000; border: groove 2px #ff3366; font-family:Arial, Helvetica, sans-serif; width:70px; height:25px;
 background:webkit-linear-gradient( #ff6666, #ff3366); background:moz-linear-gradient( #ff6666, #ff3366); background:o-linear-gradient( #ff6666, #ff3366); filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#ff6666,endColorstr=#ff3366); background:linear-gradient( #ff6666, #ff3366);}
 
#submit:hover, #submit2:hover {background-color:#FF6666; border: groove 2px #ff3366;width:70px; height:25px; color:#fff;  font-family:Arial, Helvetica, sans-serif;}

.error_message {color:#FF00CC;}
.messageok {color:#FF00CC;}
 

Pied de page des forums

Propulsé par FluxBB