par
BeRoots » 25 févr. 2006, 19:12
ok mais sa risque d'etre un peu lourd
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html>
<head>
<title>:: Formulaire d'inscription ::</title>
<script language="javascript" type="text/javascript" src="date_valid.js"></script>
<link href="css/formulaire.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="page">
<?php
/**
* On commence par vérifier si le bouton soumettant le formulaire a été
* cliqué, "envoi" étant l'attribut "name" du bouton "submit"
* Sinon, on saute à la ligne 220 de ce code.
*/
if(isset($_POST['envoi']))
{
/* Récupération des données du formulaire */
$pseudo = isset($_POST['pseudo']) ? trim($_POST['pseudo']) : "";
$pass = isset($_POST['pass']) ? trim($_POST['pass']) : "";
$passverif = isset($_POST['passverif']) ? trim($_POST['passverif']) : "";
$prenom = isset($_POST['prenom']) ? trim($_POST['prenom']) : "";
$nom = isset($_POST['nom']) ? trim($_POST['nom']) : "";
$phone = isset($_POST['phone']) ? trim($_POST['phone']) : "";
$email = isset($_POST['email']) ? trim($_POST['email']) : "";
$postal = isset($_POST['postal']) ? trim($_POST['postal']) : "";
$ville = isset($_POST['ville']) ? trim($_POST['ville']) : "";
$datenaiss = isset($_POST['datenaiss']) ? trim($_POST['datenaiss']) : "";
/**
* Définition des variables servant au traitement de l'adresse électronique et du numéro de
* téléphone: on utilise ici des expressions régulières.
*/
$valid_mail = "#^[^-_\.][a-z0-9-_\.]+[^-_\.]@[^-_\.][a-z0-9-_\.]+[^-_\.]\.[a-z]{2,4}$#";
$valid_phone = "#^\d{10}$#";
$valid_postal = "#^\d{5}$#";
$valid_datenaiss = "#(\d{2})/(\d{2})/(\d{4})#";
/**
* Traitement de vérification des champs vides ou invalides (téléphone et/ou email)
* Conditions de mauvaises réponses (champ vide par exemple)
*/
if ($pseudo == '' || $pass == '' || $passverif == '' || $prenom == '' || $nom == '' || $email == '' || $phone == '' || $postal == '' || $ville == '' || $datenaiss == '' || !(preg_match($valid_phone,$phone)) || $email == '' || !(preg_match($valid_mail, $email)) || !(preg_match($valid_postal, $postal)) || !(preg_match($valid_datenaiss,$datenaiss)))
{
/* Action à adopter */
?>
<h3>Informations incomplètes</h3>
<p>Un (ou plusieurs) champ(s) obligatoire(s) n'a(ont) pas été correctement rempli(s).</p>
<?php
if ($pseudo == '')
{
/* Si le champ pseudo est vide, */
print "<p>Vous n'avez pas précisé votre pseudo</p>\n";
}
if ($pass == '')
{
/* Si le champ pass est vide, */
print "<p>Vous n'avez pas précisé votre mot de pass</p>\n";
}
if ($passverif == '')
{
/* Si le champ pass est vide, */
print "<p>Vous n'avez pas reprécisé votre mot de pass</p>\n";
}
if ($passverif != $pass)
{
/* Si le champ pass et passverif sont different */
print "<p>Veuillez repréciser votre mot de pass !</p>\n";
}
if ($prenom == '')
{
/* Si le champ prenom est vide, */
print "<p>Vous n'avez pas précisé votre prénom</p>\n";
}
if ($nom == '')
{
/* Si le champ nom est vide, */
print "<p>Vous n'avez pas précisé votre nom</p>\n";
}
if ($phone == '')
{
/* Si le champ phone est vide, */
print "<p>Vous n'avez pas précisé votre numéro de téléphone</p>\n";
}
if (($phone) && !(preg_match($valid_phone,$phone)))
{
print "<p>Le numéro de téléphone doit comporter seulement des chiffres, de 6 à 10 chiffres sans espaces ni tirets !</p>\n";
}
if(!$email)
{
/* Si le champ email est vide, */
print "<p>Vous avez omis de mentionner une adresse électronique</p>\n";
}
if(($email) && !(preg_match($valid_mail, $email))) /* Si il y a une adresse inscrite mais invalide */
{
/* 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. */
print "<p>L'adresse électronique saisie est invalide !</p>\n";
}
if(!$postal)
{
/* Si le champ email est vide, */
print "<p>Vous avez omis de mentionner votre code postal</p>\n";
}
if(($postal) && !(preg_match($valid_postal, $postal)))
{
/* Si il y a un code postal inscrit mais invalide */
print "<p>Le code postal saisie est invalide !</p>\n";
}
if ($ville == '')
{
/* Si le champ ville est vide, */
print "<p>Vous n'avez pas précisé votre ville</p>\n";
}
if(!$datenaiss)
{
/* Si le champ datenaiss est vide, */
print "<p>Vous avez omis de mentionner votre date de naissance</p>\n";
}
/**
* Si les vérifications ont généré des erreurs, affichage du formulaire
* contenant les données déjà saisies.
*/
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" onSubmit="return valideDate(champ);">
<fieldset><legend><b>:: Données de connexion ::</b></legend>
<label><span class="legende_elmt">Votre pseudo : </span><span class="c2">*</span> <input type="text" name="pseudo" maxlength="20" class="cases" value="<?php echo $pseudo ?>" /></label><br />
<label><span class="legende_elmt">Votre mot de pass : </span><span class="c2">*</span> <input type="password" name="pass" maxlength="20" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Confirmation mot de pass : </span><span class="c2">*</span> <input type="password" name="passverif" maxlength="20" class="cases" value="" /></label><br />
</fieldset>
<fieldset><legend><b>:: Données personnelles ::</b></legend>
<label><span class="legende_elmt">Votre prénom : </span><span class="c2">*</span> <input type="text" name="prenom" maxlength="40" class="cases" value="<?php echo $prenom ?>" /></label><br />
<label><span class="legende_elmt">Votre Nom de famille : </span><span class="c2">*</span> <input type="text" name="nom" maxlength="40" class="cases" value="<?php echo $nom ?>" /></label><br />
<label><span class="legende_elmt">Votre numéro de téléphone : </span><span class="c2">*</span> <input type="text" name="phone" maxlength="10" class="cases" value="<?php echo $phone ?>" /></label><br />
<label><span class="legende_elmt">Votre adresse électronique : </span><span class="c2">*</span> <input type="text" name="email" maxlength="40" class="cases" value="<?php echo $email ?>" /></label><br />
<label><span class="legende_elmt">Votre code postal : </span><input type="text" name="postal" maxlength="5" class="cases" value="<?php echo $postal ?>" /></label><br />
<label><span class="legende_elmt">Votre ville : </span><input type="text" name="ville" maxlength="40" class="cases" value="<?php echo $ville ?>" /></label><br />
<label><span class="legende_elmt">Votre date de naissance : </span><input type="text" name="datenaiss" maxlength="10" class="cases" value="<?php echo $datenaiss ?>" /></label><br />
<div class="c3">
<input type="submit" class="verif" name="envoi" value="Envoyer" /> <input type="reset" class="verif" value="Recommencer" />
</div>
</fieldset>
</form>
<?php
}
else
{
/**
* Si aucun des champs obligatoire n'est vide et les données sont valides:
* Traitement des données
*/
$href_email = str_replace("@", "%40", $email);
// Affichage du message final des informations reçues
print "<h3>Merci ! Voici les informations que vous avez fournies</h3>\n";
print "<p>Informations sur le contact:</p>\n";
print "<p>". $prenom ." ". $nom ."<br />\n";
print "On peut vous joindre au ".$phone."<br />\n";
if($ville != "")
{
print "Vous résidez à ".$ville."<br />\n";
}
print "On peut vous envoyer un courrier électronique à: <a href=\"mailto:". $prenom ."%20". $nom ."%20%3c". $href_email ."%3e\">".$email."</a><br />\n";
print("<p>Retour vers le formulaire de base, cliquez <a href=\"". $_SERVER['PHP_SELF'] ."\" title=\"Retour vers le formulaire\">ICI</a></p>");
}
}
/**
* Si cette page s'ouvre pour la première fois sans que le bouton soumettant le formulaire n'ait
* été cliqué, alors on affiche le formulaire normalement
*/
else
{
?>
<h3>Complétez les informations pour ajouter votre nom à la liste des membres</h3>
<p>Notez que les champs précédés d'une <span class="c1">*</span> doivent obligatoirement être remplis.</p>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" onSubmit="return valideDate(champ);">
<fieldset><legend><b>:: Données de connexion ::</b></legend>
<label><span class="legende_elmt">Votre pseudo : </span><span class="c2">*</span> <input type="text" name="pseudo" maxlength="20" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre mot de pass : </span><span class="c2">*</span> <input type="password" name="pass" maxlength="20" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Confirmation mot de pass : </span><span class="c2">*</span> <input type="password" name="passverif" maxlength="20" class="cases" value="" /></label><br />
</fieldset>
<fieldset><legend><b>:: Données personnelles ::</b></legend>
<label><span class="legende_elmt">Votre prénom : </span><span class="c2">*</span> <input type="text" name="prenom" maxlength="40" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre Nom de famille : </span><span class="c2">*</span> <input type="text" name="nom" maxlength="40" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre numéro de téléphone : </span><span class="c2">*</span> <input type="text" name="phone" maxlength="10" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre adresse électronique : </span><span class="c2">*</span> <input type="text" name="email" maxlength="40" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre code postal : </span><input type="text" name="postal" maxlength="5" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre ville : </span><input type="text" name="ville" maxlength="40" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre date de naissance : </span><input type="text" name="datenaiss" maxlength="10" class="cases" value="" /></label><br />
<div class="c3">
<input type="submit" class="verif" name="envoi" value="Envoyer" /> <input type="reset" class="verif" value="Recommencer" />
</div>
</fieldset>
</form>
<?php
}
?>
</div>
</body>
</html>
le js est le même que celui que tu m'a donné et il est dans le même dossier que ce fichier php, le nom semble correct

ok mais sa risque d'etre un peu lourd :oops:
[php]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html>
<head>
<title>:: Formulaire d'inscription ::</title>
<script language="javascript" type="text/javascript" src="date_valid.js"></script>
<link href="css/formulaire.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="page">
<?php
/**
* On commence par vérifier si le bouton soumettant le formulaire a été
* cliqué, "envoi" étant l'attribut "name" du bouton "submit"
* Sinon, on saute à la ligne 220 de ce code.
*/
if(isset($_POST['envoi']))
{
/* Récupération des données du formulaire */
$pseudo = isset($_POST['pseudo']) ? trim($_POST['pseudo']) : "";
$pass = isset($_POST['pass']) ? trim($_POST['pass']) : "";
$passverif = isset($_POST['passverif']) ? trim($_POST['passverif']) : "";
$prenom = isset($_POST['prenom']) ? trim($_POST['prenom']) : "";
$nom = isset($_POST['nom']) ? trim($_POST['nom']) : "";
$phone = isset($_POST['phone']) ? trim($_POST['phone']) : "";
$email = isset($_POST['email']) ? trim($_POST['email']) : "";
$postal = isset($_POST['postal']) ? trim($_POST['postal']) : "";
$ville = isset($_POST['ville']) ? trim($_POST['ville']) : "";
$datenaiss = isset($_POST['datenaiss']) ? trim($_POST['datenaiss']) : "";
/**
* Définition des variables servant au traitement de l'adresse électronique et du numéro de
* téléphone: on utilise ici des expressions régulières.
*/
$valid_mail = "#^[^-_\.][a-z0-9-_\.]+[^-_\.]@[^-_\.][a-z0-9-_\.]+[^-_\.]\.[a-z]{2,4}$#";
$valid_phone = "#^\d{10}$#";
$valid_postal = "#^\d{5}$#";
$valid_datenaiss = "#(\d{2})/(\d{2})/(\d{4})#";
/**
* Traitement de vérification des champs vides ou invalides (téléphone et/ou email)
* Conditions de mauvaises réponses (champ vide par exemple)
*/
if ($pseudo == '' || $pass == '' || $passverif == '' || $prenom == '' || $nom == '' || $email == '' || $phone == '' || $postal == '' || $ville == '' || $datenaiss == '' || !(preg_match($valid_phone,$phone)) || $email == '' || !(preg_match($valid_mail, $email)) || !(preg_match($valid_postal, $postal)) || !(preg_match($valid_datenaiss,$datenaiss)))
{
/* Action à adopter */
?>
<h3>Informations incomplètes</h3>
<p>Un (ou plusieurs) champ(s) obligatoire(s) n'a(ont) pas été correctement rempli(s).</p>
<?php
if ($pseudo == '')
{
/* Si le champ pseudo est vide, */
print "<p>Vous n'avez pas précisé votre pseudo</p>\n";
}
if ($pass == '')
{
/* Si le champ pass est vide, */
print "<p>Vous n'avez pas précisé votre mot de pass</p>\n";
}
if ($passverif == '')
{
/* Si le champ pass est vide, */
print "<p>Vous n'avez pas reprécisé votre mot de pass</p>\n";
}
if ($passverif != $pass)
{
/* Si le champ pass et passverif sont different */
print "<p>Veuillez repréciser votre mot de pass !</p>\n";
}
if ($prenom == '')
{
/* Si le champ prenom est vide, */
print "<p>Vous n'avez pas précisé votre prénom</p>\n";
}
if ($nom == '')
{
/* Si le champ nom est vide, */
print "<p>Vous n'avez pas précisé votre nom</p>\n";
}
if ($phone == '')
{
/* Si le champ phone est vide, */
print "<p>Vous n'avez pas précisé votre numéro de téléphone</p>\n";
}
if (($phone) && !(preg_match($valid_phone,$phone)))
{
print "<p>Le numéro de téléphone doit comporter seulement des chiffres, de 6 à 10 chiffres sans espaces ni tirets !</p>\n";
}
if(!$email)
{
/* Si le champ email est vide, */
print "<p>Vous avez omis de mentionner une adresse électronique</p>\n";
}
if(($email) && !(preg_match($valid_mail, $email))) /* Si il y a une adresse inscrite mais invalide */
{
/* 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. */
print "<p>L'adresse électronique saisie est invalide !</p>\n";
}
if(!$postal)
{
/* Si le champ email est vide, */
print "<p>Vous avez omis de mentionner votre code postal</p>\n";
}
if(($postal) && !(preg_match($valid_postal, $postal)))
{
/* Si il y a un code postal inscrit mais invalide */
print "<p>Le code postal saisie est invalide !</p>\n";
}
if ($ville == '')
{
/* Si le champ ville est vide, */
print "<p>Vous n'avez pas précisé votre ville</p>\n";
}
if(!$datenaiss)
{
/* Si le champ datenaiss est vide, */
print "<p>Vous avez omis de mentionner votre date de naissance</p>\n";
}
/**
* Si les vérifications ont généré des erreurs, affichage du formulaire
* contenant les données déjà saisies.
*/
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" onSubmit="return valideDate(champ);">
<fieldset><legend><b>:: Données de connexion ::</b></legend>
<label><span class="legende_elmt">Votre pseudo : </span><span class="c2">*</span> <input type="text" name="pseudo" maxlength="20" class="cases" value="<?php echo $pseudo ?>" /></label><br />
<label><span class="legende_elmt">Votre mot de pass : </span><span class="c2">*</span> <input type="password" name="pass" maxlength="20" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Confirmation mot de pass : </span><span class="c2">*</span> <input type="password" name="passverif" maxlength="20" class="cases" value="" /></label><br />
</fieldset>
<fieldset><legend><b>:: Données personnelles ::</b></legend>
<label><span class="legende_elmt">Votre prénom : </span><span class="c2">*</span> <input type="text" name="prenom" maxlength="40" class="cases" value="<?php echo $prenom ?>" /></label><br />
<label><span class="legende_elmt">Votre Nom de famille : </span><span class="c2">*</span> <input type="text" name="nom" maxlength="40" class="cases" value="<?php echo $nom ?>" /></label><br />
<label><span class="legende_elmt">Votre numéro de téléphone : </span><span class="c2">*</span> <input type="text" name="phone" maxlength="10" class="cases" value="<?php echo $phone ?>" /></label><br />
<label><span class="legende_elmt">Votre adresse électronique : </span><span class="c2">*</span> <input type="text" name="email" maxlength="40" class="cases" value="<?php echo $email ?>" /></label><br />
<label><span class="legende_elmt">Votre code postal : </span><input type="text" name="postal" maxlength="5" class="cases" value="<?php echo $postal ?>" /></label><br />
<label><span class="legende_elmt">Votre ville : </span><input type="text" name="ville" maxlength="40" class="cases" value="<?php echo $ville ?>" /></label><br />
<label><span class="legende_elmt">Votre date de naissance : </span><input type="text" name="datenaiss" maxlength="10" class="cases" value="<?php echo $datenaiss ?>" /></label><br />
<div class="c3">
<input type="submit" class="verif" name="envoi" value="Envoyer" /> <input type="reset" class="verif" value="Recommencer" />
</div>
</fieldset>
</form>
<?php
}
else
{
/**
* Si aucun des champs obligatoire n'est vide et les données sont valides:
* Traitement des données
*/
$href_email = str_replace("@", "%40", $email);
// Affichage du message final des informations reçues
print "<h3>Merci ! Voici les informations que vous avez fournies</h3>\n";
print "<p>Informations sur le contact:</p>\n";
print "<p>". $prenom ." ". $nom ."<br />\n";
print "On peut vous joindre au ".$phone."<br />\n";
if($ville != "")
{
print "Vous résidez à ".$ville."<br />\n";
}
print "On peut vous envoyer un courrier électronique à: <a href=\"mailto:". $prenom ."%20". $nom ."%20%3c". $href_email ."%3e\">".$email."</a><br />\n";
print("<p>Retour vers le formulaire de base, cliquez <a href=\"". $_SERVER['PHP_SELF'] ."\" title=\"Retour vers le formulaire\">ICI</a></p>");
}
}
/**
* Si cette page s'ouvre pour la première fois sans que le bouton soumettant le formulaire n'ait
* été cliqué, alors on affiche le formulaire normalement
*/
else
{
?>
<h3>Complétez les informations pour ajouter votre nom à la liste des membres</h3>
<p>Notez que les champs précédés d'une <span class="c1">*</span> doivent obligatoirement être remplis.</p>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" onSubmit="return valideDate(champ);">
<fieldset><legend><b>:: Données de connexion ::</b></legend>
<label><span class="legende_elmt">Votre pseudo : </span><span class="c2">*</span> <input type="text" name="pseudo" maxlength="20" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre mot de pass : </span><span class="c2">*</span> <input type="password" name="pass" maxlength="20" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Confirmation mot de pass : </span><span class="c2">*</span> <input type="password" name="passverif" maxlength="20" class="cases" value="" /></label><br />
</fieldset>
<fieldset><legend><b>:: Données personnelles ::</b></legend>
<label><span class="legende_elmt">Votre prénom : </span><span class="c2">*</span> <input type="text" name="prenom" maxlength="40" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre Nom de famille : </span><span class="c2">*</span> <input type="text" name="nom" maxlength="40" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre numéro de téléphone : </span><span class="c2">*</span> <input type="text" name="phone" maxlength="10" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre adresse électronique : </span><span class="c2">*</span> <input type="text" name="email" maxlength="40" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre code postal : </span><input type="text" name="postal" maxlength="5" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre ville : </span><input type="text" name="ville" maxlength="40" class="cases" value="" /></label><br />
<label><span class="legende_elmt">Votre date de naissance : </span><input type="text" name="datenaiss" maxlength="10" class="cases" value="" /></label><br />
<div class="c3">
<input type="submit" class="verif" name="envoi" value="Envoyer" /> <input type="reset" class="verif" value="Recommencer" />
</div>
</fieldset>
</form>
<?php
}
?>
</div>
</body>
</html>[/php]
le js est le même que celui que tu m'a donné et il est dans le même dossier que ce fichier php, le nom semble correct :wink: