Valider un formulaire

Fermé
xunil2003 Messages postés 766 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2024 - 10 juil. 2012 à 19:36
 Utilisateur anonyme - 11 juil. 2012 à 02:44
Bonjour,

Bonsoir,

J'ai terminé mon formulaire, mais il y a un truc que je ne comprend pas.
Quand l'utilisateur va sur le formulaire la première fois, il va avoir les messages d'erreur des champs vide.
Puis quand il valide le formulaire de nouveau si il n'y a pas d'erreur, le faire pointer sur la page 2.

Merci.

Le code du formulaire :

// On regarde si l'utilisateur est bien passé par le module d'inscription
if(isset($_POST["envoyer"])){

$id = mysql_real_escape_string(htmlspecialchars($_POST['id']));
$civilite = mysql_real_escape_string(htmlspecialchars($_POST['civilite']));
$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
$jour_de_naissance = mysql_real_escape_string(htmlspecialchars($_POST['jour_de_naissance']));
$mois_de_naissance = mysql_real_escape_string(htmlspecialchars($_POST['mois_de_naissance']));
$annee_de_naissance = mysql_real_escape_string(htmlspecialchars($_POST['annee_de_naissance']));
$adresse1 = mysql_real_escape_string(htmlspecialchars($_POST['adresse1']));
$adresse2 = mysql_real_escape_string(htmlspecialchars($_POST['adresse2']));
$code_postal = mysql_real_escape_string(htmlspecialchars($_POST['code_postal']));
$ville = mysql_real_escape_string(htmlspecialchars($_POST['ville']));
$pays = mysql_real_escape_string(htmlspecialchars($_POST['pays']));
$email = mysql_real_escape_string(htmlspecialchars($_POST['email']));
$email_confirm = mysql_real_escape_string(htmlspecialchars($_POST['email_confirm']));
$adresse_ip = mysql_real_escape_string(htmlspecialchars($_POST['adresse_ip']));
$niveau = mysql_real_escape_string(htmlspecialchars($_POST['niveau']));
$date_inscription = mysql_real_escape_string(htmlspecialchars($_POST['date_inscription']));
$heure_inscription = mysql_real_escape_string(htmlspecialchars($_POST['heure_inscription']));
$date_derniere_visite = mysql_real_escape_string(htmlspecialchars($_POST['date']));
$heure_derniere_visite = mysql_real_escape_string(htmlspecialchars($_POST['heure']));
//$login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
$pass_claire = mysql_real_escape_string(htmlspecialchars($_POST['pass']));
$pass_md5 = mysql_real_escape_string(htmlspecialchars($_POST['pass']));
$pass_confirm = mysql_real_escape_string(htmlspecialchars($_POST['pass2']));

}


//---------------------------------- vèrification du formulaire ---------------------------------------------

// On regarde si tout les champs sont remplis, sinon, on affiche un message à l'utilisateur.
//if($_POST["login"] == NULL OR $_POST["pass"] == NULL OR $_POST["pass2"] == NULL){
if($_POST["civilite"] == NULL OR $_POST["nom"] == NULL OR $_POST["prenom"] == NULL OR $_POST["jour_de_naissance"] == NULL OR $_POST["mois_de_naissance"] == NULL OR $_POST["annee_de_naissance"] == NULL OR $_POST["email"] == NULL OR $_POST["email_confirm"] == NULL){

// On met la variable $error à TRUE pour que par la suite le navigateur sache qu'il y'a une erreur à afficher.
$errorMSG = "Tout les champs avec un asterisk doivent être remplis !";
} else {
// On écrit le message à afficher :
$registerOK = "Tout les champs sont remplis !";
}
//---------------------------------------- Verification champs vide -------------------------------------------------
if($civilite){
echo "<p align='center' style='color:green;'>"."<strong>Le champs Civilité est remplis ---> saisie correcte !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le champs Civilité est vide !</strong>"."</p>";
}

if($non){
echo "<p align='center' style='color:green;'>"."<strong>Le champs Nom est remplis ---> saisie correcte !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le champs Nom est vide !</strong>"."</p>";
}

if($prenon){
echo "<p align='center' style='color:green;'>"."<strong>Le champs prenom est remplis ---> saisie correcte !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le champs Prenom est vide !</strong>"."</p>";
}

if($jour_de_naissance){
echo "<p align='center' style='color:green;'>"."<strong>Le champs Jour de naissance est remplis ---> saisie correcte !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le champs Jour de naissance est vide !</strong>"."</p>";
}

if($mois_de_naissance){
echo "<p align='center' style='color:green;'>"."<strong>Le champs Mois de naissance est remplis ---> saisie correcte !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le champs mois de naissance est vide !</strong>"."</p>";
}

if($annee_de_naissance){
echo "<p align='center' style='color:green;'>"."<strong>Le champs Année de naissance est remplis ---> saisie correcte !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le champs Année de naissance est vide !</strong>"."</p>";
}
/*
if($email){
echo 'Saisie correcte !';
//header("Location: inscription2-3.php");
} else {
echo ' Saisie non correcte !';
//header("Location: inscription2-3.php");
}
*/
//----------------------------------- Verification Email ----------------------------------------------

$valid_email = "#^[^-_\.][a-z0-9-_\.]+[^-_\.]@[^-_\.][a-z0-9-_\.]+[^-_\.]\.[a-z]{2,4}$#";
if(($email) && !(preg_match($valid_email, $email))) /* Si il y a une adresse inscrite mais invalide */
/* Si le champ "adresse électronique" est vide, */
echo "<p align='center' style='color:green;'>"."<strong>Le champs valide email est vide !</strong>"."</p>";
{
/* On vérifie LES DEUX conditions réunies (avec le sugne "&&"): si on ne vérifie que la validité, en ne
mettant pas d'adresse dans le formulaire, on obtient l'affichage des deux messages, or l'adresse à
ce moment là n'est pas invalide, elle est absente: le message d'invalidité ne s'applique donc pas. */
echo "<p align='center' style='color:red;'>"."<strong>L'adresse électronique saisie est invalide !</strong>"."</p>";
}

//-------------------------------- on verification si l'email existe de la basse de donnée ---------------------------------------------

if($email){
// Si c'est bon on regarde dans la base de donnée si le nom de compte est déjà utilisé :
$sql = "SELECT email FROM $nom_table WHERE email = '".$_POST["email"]."' ";
$sql = mysql_query($sql) or die (mysql_error());

echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> requette recherche email validé !</strong>"."</p>";
} else {
echo "<p align='center' style='color:red;'>"."<strong>Erreur dans la requête SQL ".$sql."</strong>"."</p>";
}

// On compte combien de valeur à pour nom de compte celui tapé par l'utilisateur.
$sql = mysql_num_rows($sql);
// Si $sql est égal à 0 (c'est-à-dire qu'il n'y a pas de nom de compte avec la valeur tapé par l'utilisateur

if($sql == 0) {
//if (empty($sql) && empty($query)) {
$sql = mysql_query($sql);

// Si la requête s'est bien effectué :
$query="0";

echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> L'email existe pas !</strong>"."</p>";
} else {
echo "<p align='center' style='color:red;'>"."<strong>L'adresse email ".$_POST["email"]." est déjà inscrit !</strong>"."</p>";
}
//}


//--------------------- on verification si le non et prenom existe de la basse de donnée --------------------------------------------------

if($nom){
// Si c'est bon on regarde dans la base de donnée si le nom de compte est déjà utilisé :
$sql2 = "SELECT nom,prenom FROM $nom_table WHERE prenom = '".$_POST["prenom"]."' AND nom LIKE '".$_POST['nom']."' ";
$sql2 = mysql_query($sql2) or die (mysql_error());


echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> requette recherche non et prénom validé !</strong>"."</p>";
} else {
echo "<p align='center' style='color:red;'>"."<strong>Erreur dans la requête SQL ".$sql2."</strong>"."</p>";
}

// On compte combien de valeur à pour nom de compte celui tapé par l'utilisateur.
$sql2 = mysql_num_rows($sql2);
// Si $sql est égal à 0 (c'est-à-dire qu'il n'y a pas de nom de compte avec la valeur tapé par l'utilisateur

if($sql2 == 0) {
//if (empty($sql) && empty($query)) {
$sql2 = mysql_query($sql2);

// Si la requête s'est bien effectué :
$query2="0";

echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> Le nom et prenom existe pas !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le nom ".$_POST["nom"]." est prénom ".$_POST["prenom"]." est déjà inscrit !</strong>"."</p>";
//$nom= NULL;
//$adresse2= NULL;

//$nom= $_POST["email"];
}


//---------------------------------- Autre verification --------------------------------------------------

// Si le nom de compte et le mot de passe sont différent :
if($_POST["nom"] != $_POST["prenom"]){
echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> vérification nom et prénom pareil !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le nom doit être différent du prènom. !</strong>"."</p>";
}

// Si le nom de compte et le login sont différent :
if($_POST["nom"] != $_POST["login"]){
echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> vérification nom et login pareil !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le nom doit être différent du login. !</strong>"."</p>";
}

// Si le prènom du compte et le login sont différent :
if($_POST["prenom"] != $_POST["login"]){
echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> vérification prènom et login pareil !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le prènom doit être différent du login. !</strong>"."</p>";
}

// Sinon, si les deux adresse email correspondent :
if($_POST["email"] == $_POST["email_confirm"]){
echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> vérification les deux email sont pareil !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Le deux email saisie sont différente. !</strong>"."</p>";
}


// Sinon, si les deux adresse email correspondent :
if($_POST["pass"] == $_POST["pass2"]){
echo "<p align='center' style='color:green;'>"."<strong>Saisie correcte --> vérification les deux mot de passe sont pareil !</strong>"."</p>";
//header("Location: inscription2-3.php");
} else {
echo "<p align='center' style='color:red;'>"."<strong>Les deux mot de passe saisie sont différente !</strong>"."</p>";
}





echo $jour_de_naissance;
if(empty($_POST['jour_de_naissance'])){
echo "<p align='center' style='color:green;'>"."<strong>Le champ jour de naissance est vide !</strong>"."</p>";
}elseif($_POST['jour_de_naissance'] < 1){
echo "<p align='center' style='color:red;'>"."<strong>Saisie correcte --> Le jour_de_naissance doit être un chiffre entre 01 et 31</strong>"."</p>";
}elseif ($_POST['jour_de_naissance'] > 31){
echo "<p align='center' style='color:red;'>"."<strong>Le jour de naissance doit être un chiffre entre 01 et 31 !</strong>"."</p>";
}

echo $mois_de_naissance;
if(empty($_POST['mois_de_naissance'])){
echo "<p align='center' style='color:green;'>"."<strong>Le champ mois de naissance est vide !</strong>"."</p>";
}elseif($_POST['mois_de_naissance'] < 1){
echo "<p align='center' style='color:red;'>"."<strong>Saisie correcte --> Le mois_de_naissance doit être un chiffre entre 01 et 12</strong>"."</p>";
}elseif ($_POST['mois_de_naissance'] > 12){
echo "<p align='center' style='color:red;'>"."<strong>Le Mois de naissance doit être un chiffre entre 01 et 12 !</strong>"."</p>";
}




echo $annee_de_naissance;
if(empty($_POST['annee_de_naissance'])){
echo "<p align='center' style='color:green;'>"."<strong>Le champ année de naissance est vide !</strong>"."</p>";
}elseif($_POST['annee_de_naissance'] < 1900){
echo "<p align='center' style='color:reed;'>"."<strong>L'année de naissance est doit être un chiffre supérieur à 1900</strong>"."</p>";
}elseif ($_POST['annee_de_naissance'] > $annee_en_cours){
echo "<p align='center' style='color:red;'>"."<strong>L'année de naissance doit être un chiffre entre 1900 et ".$annee_en_cours." !</strong>"."</p>";
}

?>

<?php

mysql_close($BDD);

?>


?>

<html>

<head>

<title>Création d'un formulaire d'inscription en HTML</title>

</head>

<body>
<p align="center">Inscription espace membre.
<p align="center">Veuillez completer ci-dessous les champs.
<p align="center">(<font color="#ff0000">*</font>) champs obligatoire.

</p>
<form action="" method='post'>
<table align="center" border="1" style="width: auto">
<tbody>
<tr>
<td>Civilité<br />
</td>
<td><?php echo "<align='right' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><select name="civilite" value="">
<option value=" ">--- SELECTIONNER ---</option>
<option value="Mademoiselle">Mademoiselle</option>
<option value="Madame">Madame</option>
<option value="Monsieur">Monsieur</option>
</select><br />
</td>
</tr>
<tr>
<td>Nom<br />
</td>
<td><?php echo "<align='right' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><input type="text" name="nom" size="30" maxlength="30" value="<?php echo $NOM; ?>"<br />
</td>
</tr>
<tr>
<td>Prènom<br />
</td>
<td><?php echo "<align='right' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><input type="text" name="prenom" size="30" maxlength="20" value="<?php echo $PRENOM; ?>"><br />
</td>
</tr>
<tr>
<td>Date de naissance<br />
</td>
<td><?php echo "<align='right' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><input type="text" name="jour_de_naissance" size="1" maxlength="3" value="<?php echo $JOUR_DE_NAISSANCE; ?> "<br /> / <input type="text" name="mois_de_naissance" size="1" maxlength="3" value="<?php echo $MOIS_DE_NAISSANCE; ?> "<br /> / <input type="text" name="annee_de_naissance" size="3" maxlength="5" value="<?php echo $ANNE_DE_NAISSANCE; ?> "<br />
</td>
</tr>
<tr>
<td><br />
</td>
<td><br />
</td>
<td><?php echo "<align='right' style='color:read;'><strong>jour / mois / anné</strong>"; ?><br />
</td>
</tr>
<tr>
<td>Adresse<br />
</td>
<td><br />
</td>
<td><input type="text" name="adresse1" size="30" maxlength="150" value="<?php echo $ADRESSE1; ?> ""><br />
</td>
</tr>
<tr>
<td>Adresse2<br />
</td>
<td><br />
</td>
<td><input type="text" name="adresse2" size="30" maxlength="150" value="<?php echo $ADRESSE2; ?> "<br />
</td>
</tr>
<tr>
<td>Code_postal<br />
</td>
<td><br />
</td>
<td><input type="text" name="code_postal" size="30" maxlength="40" value="<?php echo $CODE_POSTAL; ?> "><br />
</td>
</tr>
<td>Ville<br />
</td>
<td><br />
</td>
<td><input type="text" name="ville" size="30" maxlength="40" value="<?php echo $VILLE; ?> "><br />
</td>
</tr>
<tr>
<td>Pays<br />
</td>
<td><br />
</td>
<td><input type="text" name="pays" size="30" maxlength="40" value="<?php echo $PAYS; ?> " ><br />
</td>
</tr>
<tr>
<td>Email<br />
</td>
<td><?php echo "<align='right' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><input type="text" name="email" size="30" maxlength="150" value="<?php echo $EMAIL; ?> " ><br />
</td>
</tr>
<td>Confirmation email<br />
</td>
<td><?php echo "<align='right' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><input type="text" name="email_confirm" size="30" maxlength="150 value="<?php echo $EMAIL_CONFIRM; ?> "><br />
</td>
</tr>
<tr>
<td><br />
</td>
<td><br />
</td>
<td><input type="HIDDEN" name="adresse_ip" value="<?php echo $ip ; ?>" size="30" ><br />
</td>
</tr>
<tr>
<td><br />
</td>
<td><br />
</td>
<td><input type="HIDDEN" name="niveau" value="<?php echo $niveau ; ?>" size="30" ><br />
</td>
</tr>
<td><br />
</td>
<td><br />
</td>
<td><input type="HIDDEN" name="date_inscription" value="<?php echo $date ; ?>" size="30" ><br />
</td>
</tr>
<tr>
<td><br />
</td>
<td><br />
</td>
<td><input type="HIDDEN" name="heure_inscription" value="<?php echo $heure ; ?>" size="30" ><br />
</td>
</tr>
<tr>
<td>Login<br />
</td>
<td><?php echo "<align='right' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><input type="text" name="login" size="30" /><br />
</td>
</tr>
<td>Mot de passe<br />
</td>
<td><?php echo "<align='right' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><input type="text" name="pass" size="30" /><br />
</td>
</tr>
<tr>
<td>Confirmation mot de passe <br />
</td>
<td><?php echo "<align='left' style='color:red;'><strong>*</strong>"; ?><br />
</td>
<td><input type="text" name="pass2" size="30" /><br />
</td>
</tr>
<td><br />
</td>
<td><br />
</td>
<td><br />
</td>
</tr>
<tr>
<td><br />
</td>
<td><br />
</td>
<td><input type="reset" value="Effacer"> <input type="submit" name="envoyer" value="Valider"><br />
</td>
</tr>
<tr>
<td><br />
</td>
<td><br />
</td>
<td><br />
</td>
</tr>
</tbody>
</table>

</body>

</html>

1 réponse

Utilisateur anonyme
11 juil. 2012 à 02:44
C'est ton premier if qui est fermé trop top.
0