une petite explication: J'ai une page d'inscription qui est rempli de plusieurs champs dont les couleurs changent, blanc si le champ est correct,rouge si le champ est faux,
Je code tout ça et je teste toutes mes vérifications fonctionnent mais lorsque je mets que des données correctes j'ai le message"Veuillez remplir tout les champs en rouge" or tout mes champs sont blancs,
pouvez-vous m'aider?
Mon code
- Code: Tout sélectionner
<style type="text/css">
input {
font-family: verdana;
border-right: solid #000000 1px;
border-TOP: solid #000000 1px;
font-size: 8pt;
border-left: solid #000000 1px;
color: #000000;
border-bottom: solid #000000 1px;
background-color: #ffffff ;}
</style><?php
$webmaster = "mail@machinchose.com";
// Style pour le input et le textarea
$style_input_blanc = "style =
\"font-family: verdana;
border-right: solid #000000 1px;
border-TOP: solid #000000 1px;
font-size: 8pt;
border-left: solid #000000 1px;
color: #000000;
border-bottom: solid #000000 1px;
background-color: #ffffff \"";
$style_input_rouge ="style =
\"font-family: verdana;
border-right: solid #000000 1px;
border-top: solid #000000 1px;
font-size: 8pt;
border-left: solid #000000 1px;
color: #000000;
border-bottom: solid #000000 1px;
background-color: #ff0000 \"";
$style_textarea_blanc = "style = \"
font-family: verdana;
border-right: solid #000000 1px;
border-top: solid #000000 1px;
FONT-size: 8pt;
border-left: solid #000000 1px;
color: #000000;
border-bottom: solid #000000 1px;
background-color: #ffffff\"";
$style_textarea_rouge = "style = \"
font-family: verdana;
border-right: solid #000000 1px;
border-top: solid #000000 1px;
font-size: 8pt;
border-left: solid #000000 1px;
color: #000000;
border-bottom: solid #000000 1px;
background-color: #ff0000\"";
// Fin du style
if(isset($_POST['envoyer'])){ // si une action est faite par l'utilisateur
$alerte = $_POST['envoyer']; //chargement du button envoyer
$email = htmlentities($_POST['email'], ENT_NOQUOTES); // nom
$nom = htmlspecialchars($_POST['nom'], ENT_QUOTES); // mail
$prenom = htmlspecialchars($_POST['prenom'], ENT_QUOTES);//prénom
$date = htmlspecialchars($_POST['date'], ENT_QUOTES);
$pays = htmlspecialchars($_POST['pays'], ENT_QUOTES);//pays
$pseudo = htmlspecialchars($_POST['pseudo'], ENT_QUOTES);
$password = htmlspecialchars($_POST['password'], ENT_QUOTES);
$repassword = htmlspecialchars($_POST['repassword'], ENT_QUOTES);
$experience = htmlspecialchars($_POST['experience'], ENT_QUOTES);
$vol = $_POST['vol'];
$remarques = $_POST['remarques'];
}
function verif_date($var){
$code_date='#^(\d{1,2})/(\d{1,2})/(\d{4})$#';
if(preg_match($code_date,$var)){ // compare la syntaxe mail valide au mail saisie
return $var;
}
}
function verif_exp($var){
$code_exp='#^(\d{1,2})$#';
if(preg_match($code_exp,$var)){ // compare la syntaxe mail valide au mail saisie
return $var;
}
}
function verif_null($var){ // fonction qui verifie si le champs est vide
if($var!=""){
return $var;
}
}
function verif_email($var) // fonction qui verifie si le mail est correct et si le champs est vide
{
$code_syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,5}$#'; // chargement de la syntaxe mail valide
if(preg_match($code_syntaxe,$var)){ // compare la syntaxe mail valide au mail saisie
return $var;
}
}
$mdp1 = $_POST['password'];
$mdp2 = $_POST['repassword'];
function envoi_mail($email,$nom,$prenom,$pays,$pseudo,$password,$repassword,$experience,$vol,$remarques){ //fonction qui envoie le mail
$contenu_message = "Nom : ".$nom."<br>Prenom : ".$prenom."<br>Naissance : ".$date."<br>Pays : ".$pays."<br>Pseudo :".$pseudo."<br>Mot de passe : ".$password."<br>Mail : ".$email."<br>Experience : ".$experience."<br>type de vol : ".$vol."<br> Remarques : ".$remarques."\n";
$entete = "From: Une nouvelle inscription!> \nContent-Type: text/html; charset=iso-8859-1";
mail($webmaster,$sujet,$contenu_message,$entete);
}
function verif_form($email,$nom,$prenom,$date,$pays,$pseudo,$password,$repassword,$experience,$vol,$remarques){ //fonction qui verifie si le formulaire est pret a etre envoyer
if(verif_email($email) && verif_null($nom) && verif_null($prenom) && verif_date($date) && verif_null($pays) && verif_null($pseudo) && verif_null($password) && verif_exp($experience)){ // verifie si toute les fontions sont a true
envoi_mail($webmaster,$email,$nom,$prenom,$date,$pays,$pseudo,$password,$experience,$vol,$remarques);
echo "<font color=\"red\" size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\" ><strong>Tout les champs sont valides le mail est envoyé. Merci</strong></font><br>";}else{
echo "<font color=\"red\" size=\"3\" face=\"Verdana, Arial, Helvetica, sans-serif\" ><strong>Veuillez saisir correctement tous les champs en rouge.</strong></font><br>"; // Une erreur dans le formulaire
}
}
?>
<br />
<?php
if(isset($alerte)){ // verifi si l'utilisateur a fait l'action d'envoyer
verif_form($webmaster,$email,$nom,$prenom,$date,$pays,$pseudo,$password,$repassword,$experience,$vol,$remarques);
}
?>
<br />
<?php /* FORMULAIRE DEBUT */ ?>
<form method="post" action ="inscription.php">
<table width="100%" height="317" border="0">Les champs marqués d'un * sont obligatoires.
<tr>
<td width="14%" align="left" valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre adresse mail*</font>
</td>
<td width="86%">
<input type="text" name="email" size="30"
<?php if(isset($alerte)){ //si verif_null est false on background en rouge
if(verif_email($email)){
echo $style_input_blanc;
}else {
echo $style_input_rouge;
}
} ?>
value="<?php if(isset($alerte)){ echo $email; } ?>">
</td>
</tr>
<tr>
<td align="left" valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre nom*</font></td>
<td>
<input type="text" name="nom" size="20"
<?php if(isset($alerte)){ //si verif_mail est false on background en rouge
if(verif_null($nom)){
echo $style_input_blanc;
}else {
echo $style_input_rouge;
}
} ?>
value="<?php if(isset($alerte)){ echo $nom; } ?>">
</td>
</tr>
<tr>
<td align="left" valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre prénom*</font></td>
<td>
<input type="text" name="prenom" size="20"
<?php if(isset($alerte)){ //si verif_mail est false on background en rouge
if(verif_null($prenom)){
echo $style_input_blanc;
}else {
echo $style_input_rouge;
}
} ?>
value="<?php if(isset($alerte)){ echo $prenom; } ?>">
</td>
</tr>
<tr>
<td align="left" valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre date de naissance*</font></td>
<td>
<input type="text" name="date" size="20"
<?php if(isset($alerte)){ //si verif_tel est false on background en rouge
if(verif_date($date)){
echo $style_input_blanc;
}else {
echo $style_input_rouge;
}
} ?>
value="<?php if(isset($alerte)){ echo $date; } ?>">
</td>
</tr>
<tr>
<td valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre pays*</font></td>
<td>
<input type="text" name="pays" size="20"
<?php if(isset($alerte)){ //si verif_tel est false on background en rouge
if(verif_null($pays)){
echo $style_input_blanc;
}else {
echo $style_input_rouge;
}
} ?>
value="<?php if(isset($alerte)){ echo $pays; } ?>">
</td>
</tr>
<tr>
<td valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre pseudo*</font></td>
<td>
<input type="text" name="pseudo" size="20"
<?php if(isset($alerte)){ //si verif_tel est false on background en rouge
if(verif_null($pseudo)){
echo $style_input_blanc;
}else {
echo $style_input_rouge;
}
} ?>
value="<?php if(isset($alerte)){ echo $pseudo; } ?>">
</td>
</tr>
<tr>
<td valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre mot de passe*</font></td>
<td>
<input type="text" name="password" size="20"
<?php if(isset($alerte)){ //si verif_tel est false on background en rouge
if(verif_null($password)){
echo $style_input_blanc;
}else {
echo $style_input_rouge;
}
} ?>
value="<?php if(isset($alerte)){ echo $password; } ?>">
</td>
</tr>
<tr>
<td valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Confirmez votre mot de passe*</font></td>
<td>
<input type="text" name="repassword" size="20"
<?php if($mdp1 != $mdp2)
{
echo $style_input_rouge;
}
else
{
echo $style_input_blanc;
} ?>
value="<?php if(isset($alerte)){ echo $repassword; } ?>">
</td>
</tr>
<tr>
<td valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Votre expérience <br/>(en mois)*</font></td>
<td>
<input type="text" name="experience" size="20"
<?php if(isset($alerte)){ //si verif_tel est false on background en rouge
if(verif_exp($experience)){
echo $style_input_blanc;
}else {
echo $style_input_rouge;
}
} ?>
value="<?php if(isset($alerte)){ echo $experience; } ?>">
</td>
</tr>
<tr>
<td valign="middle">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Veuillez sélectionner votre type de vol*</font></td>
<td> <? if ($vol =="") echo '<font color="red">Veuillez remplir les informations ci-dessous.</font><br>';?>
<input checked type='radio' name='vol' value="tourist" border='0'>Vols touristiques (vols d'1à2heures)<br/>
<input type='radio' name='vol' value="moyen" border='0'>Vols moyens courriers (vols de 2à5heures)<br/>
<input type='radio' name='vol' value="long" border='0'>Vols longs courriers [vols de plus de 5heures (avec escales)]
</td>
</tr>
<tr>
<td height="181" valign="top">
<font size="2" face="Verdana, Arial, Helvetica, sans-serif">Remarque(s) : </font>
</td>
<td valign="top">
<textarea name="remarques" cols="30" rows="5" ></textarea>
</td>
</tr>
<tr>
<td>
</td>
<td>
<input type="submit" name="envoyer" value="Envoyer">
<input type="reset" value="Effacer" name="effacer" >
</td>
</tr>
</table>
</form>