Bonjour,
Je débute en programmation et je "rame" totalement pour trouver comment faire le retour au formulaire en affichant les données qui avaient été pré-rempli par l'utilisateur.
Je m'explique, j'aimerai que lorsque un utilisateur valide le formulaire et qu'il a oublié un champs obligatoire, un message s'affiche et le renvoie sur le formulaire pré-rempli.
Mon problème est comment se souvenir de ce qui a été écrit?
En effet ma validation emmène sur un autre fichier. Je voulais utiliser value= "$_POST['element'] mais cela ne fonctionne pas car les $_Post sont définis qu'après avoir envoyer le formulaire.
Je suis un peu perdue, je veux bien de l'aide.
voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <form method="post" action="creationreport.php"> <p> <label for="numreport"> Report Number: </label> <input type="text" name="numreport" id="numreport" /> <br/> <label for="dateexamen"> Exam Date (yyyy/mm/dd): </label> <input type="text" name="dateexamen" id="dateexamen" onchange="if(this.value.match(new RegExp('^[0-9]{4}\/[0-9]{2}\/[0-9]{2}$','g'))){this.style.backgroundColor='white'}else{this.style.backgroundColor='red'}" /> <br/> <label for="patientname"> Patient Name: </label> <input type="text" name="patientname" id="patientname" /> <br/> <label for="sex"> Patient Sex: </label> <input type="radio" name="sex" value="Woman" id="woman" /> Woman <input type="radio" name="sex" value="Man" id="man" checked='checked'/> Man <br/> <p> <input type="submit" name="retour" value="Return to menu"/> </p> </form>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19if (isset ($_POST['numreport'] ) AND isset ($_POST['dateexamen']) AND isset($_POST['patientname']) AND isset($_POST['patientage']) AND isset($_POST['sex']) AND !empty($_POST['numreport']) AND !empty($_POST['dateexamen']) AND !empty($_POST['patientname']) AND !empty($_POST['patientage']) AND !empty($_POST['sex']) AND preg_match ("#^[0-9]{0,3}$#",$_POST['patientage']) AND preg_match ("#^[0-9]{4}\/[0-9]{2}\/[0-9]{2}$#",$_POST['dateexamen'])) { //code pour enregistrer les données } else { <script type="text/javascript" > alert("warning: veuillez remplir tous les champs SVP"); </script> <?php // renvoyer le formulaire avec se qui il y avait ecrit!!!! include ('createreport.php'); ?> }
Merci d'avance![]()





Répondre avec citation







Partager