Vous n'êtes pas identifié(e).
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
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é : * </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é : * </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>
Dernière modification par Kayakeuse (13-09-2013 18:55:55)
Hors ligne
Bonjour,
Le fait que vous disiez que ce code fonctionne sur d'autres sites et pas ici, je suppose que vous avez consulté la documentation de la fonction extract en php que vous pouvez trouver ici.
Ainsi je suppose que la variable REGISTER_GLOBALS est à off sur votre site actuel?
Pour le reste, je ne fais pas d'autres commentaires sur le code posté ici, car vous êtes censée, comme le stipule la charte de ce forum, avoir lue les réponses déjà apportées sur ce forum concernant la façon de traiter des données postées issues d'un formulaire, et ce, pour le faire sans risque d'erreur de traitement ni de sécurité.
Bon week-end.
Dernière modification par Jc (21-09-2013 15:42:18)
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne
Bonjour,
Merci pour votre réponse. Entre temps j'ai solutionné mes problèmes...
Bon week-end à vous.
Hors ligne
Bonjour,
Juste par acquis de conscience, j'espère tout de même que vous ne comptez pas sur ce code, pour donner de votre site une image sérieuse de l'activité qu'il représente, ni que vous comptez dessus pour éventuellement gagner votre vie, car déjà sans chercher midi à 14h, une simple saisie d'une simple ou double quote par l'utilisateur dans votre formulaire suffit à planter l'insertion en base de données, et une double quote à planter grave le fonctionnement de votre formulaire. De plus si vous comptez sur les utilisateurs pour utiliser votre formulaire en saisissant uniquement ce qu'ils sont sensés y mettre, je vous souhaite bien du courage.
Bon week-end à vous.
Jc.
Dernière modification par Jc (22-09-2013 09:48:45)
POO PHP+Ajax en MVC avec PDO et Bases de données épaisses : What else?
Hors ligne