Formulaire avec les données récupérées si erreur

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Formulaire avec les données récupérées si erreur

Re: Formulaire avec les données récupérées si erreur

par cdw77 » 17 avr. 2012, 17:45

Bonjour Moogli,

Merci pour ton aide.

J'ai fait en passant par une page de traitement.
avec isset.

Merci

Re: Formulaire avec les données récupérées si erreur

par moogli » 04 avr. 2012, 19:07

Salut,

Deux solutions :
- faire traitement et la validation sur la même page
- garder ton système et utiliser les sessions pour pré remplir le formulaire (plus la fonction header pour la redirection).

Utilise la fonction empty pour vérifier l'existence des champs dans le tableau $_POST (ce n'est pas parce que les a mis dans le formulaire que tu les aura dans $_POST).

Pour pré remplir un champ utilisé l'attribut html value.

@+

Formulaire avec les données récupérées si erreur

par cdw77 » 04 avr. 2012, 18:31

Bonjour,

Je fais un livre d'or , mais j'aimerai que si l'utilisateur se trompe dans le captcha le formulaire se réaffiche avec les données qui sont entrées.
Pour éviter que l'utilisateur refasse tout.

idem si les champs sont mals renseignés.

Car la vérification se fait une fois le bouton submit validé.

Merci.

Ci dessous mes deux pages php
Page du livre
<p>
						<fieldset>
						<center>
						ICI SERA AFFICHE LE LIVRE D'OR AVEC LES MESSAGES 
						<br/></center>
						</fieldset>
					</p>
					<p><center>
						Donnez-nous votre ressenti suite à votre rencontre avec l'association.
					</center></p>
					<p>
						<center>Tous les champs marqués de  * doivent être renseignés.</center>
					</p>
					<form action="traitement.php" method="post" enctype="multipart/form-data">
					<fieldset>
						<table>
							<tr>
								<td colspan="3"><center>Coordonnées</center></td>
								<td></td>
								<td></td>
								<td colspan="5"><center>Date et Lieu</center></td>
								<td></td>
								<td></td>
								<td></td>
								<td></td>
							</tr>
							
							<tr>
								<td>Civilité *</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>
									<select name="Titre" value="<?php if(isset($_POST['Titre'])) {echo $_POST['Titre'];} ?>">
										<option></option>
                        			<option value="Melle">Mademoiselle</option>
                        			<option value="Mme">Madame</option>
                        			<option value="Mr">Monsieur</option>
                    				</select>
								</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>Date de votre rencontre *</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td><input type="text" name="Date" size="25" value="<?php if(isset($_POST['Date'])) {echo $_POST['Date'];} ?>"/></td>
							</tr>
							<tr>
								<td>Votre Nom*</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td><input type="texte" name="Name" size="25" value="<?php if(isset($_POST['Name'])) {echo $_POST['Name'];} ?>"/></td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>Votre Ville *</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td><input type="text" name="Ville" size="25"/></td>
							</tr>
							<tr>
								<td>Votre Prénom *</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td><input type="text" name="LastName" size="25"/></td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>Votre Département *</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td><input type="text" name="Dept" size="25"/></td>
							</tr>
							<tr>
								<td></td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td></td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>Ville de la rencontre *</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td><input type="texte" name="LieuVisit" size="25"/></td>
							</tr>
							<tr>
								<td></td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td></td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td>Département de la rencontre *</td>
								<td>&nbsp;&nbsp;&nbsp;</td>
								<td><input type="text" name="DeptVisit" size="25"/></td>
							</tr>
						</table>
						 </fieldset>
					<p>
						<center>Tous les champs marqués de  * doivent être renseignés.</center>
					</p>
					<fieldset>
						<p><center>Votre Message *</p>
						<textarea name="Message" rows="14" cols="100"></textarea>
						</center>
					</fieldset>
					<p>
						<center>Tous les champs marqués de  * doivent être renseignés.</center>
					</p>
					<fieldset>
						<label>Anti Span Obligatoire *</label>
                     <br/>
                     <label>Vous êtes un robot ?</label>
                     <input type="radio" name="rdBtn" value="1"/> Oui 
                    <input type="radio" name="rdBtn" value="0"/> Non
                    <br/>
                    <label>5 + 2 =</label>
                    <input type="texte" name="calcul" value="" size="12"/>
					</fieldset>
						<p>
							<center>
								<input type="submit" value="Envoyer" name="submit" />
								<input type="reset" value="Effacer" name="reset" />
							</center>
						</p>
						
					</form>
page de traitement
<?php
$rdBtn = $_POST['rdBtn'];
$calcul = $_POST['calcul'];
if ($rdBtn == 0 && $calcul == 7) {
	if (isset($_POST['submit'])) {

		if (isset($_POST['Name'])) {

		}
	}
}
else {
	echo'Merci de recommencer le formulaire et de répondre à l\'antiSpan ';

?>
<p>
	<a href="livreOr.php"><input type="button" value="Recommencer le formulaire"/></a>
</p>
<?php
}
?>