Comment traiter un formulaire??
Lili_754
Messages postés
125
Date d'inscription
Statut
Membre
Dernière intervention
-
JooS Messages postés 2468 Date d'inscription Statut Membre Dernière intervention -
JooS Messages postés 2468 Date d'inscription Statut Membre Dernière intervention -
Bonjour
Voici l'enoncer de mon probleme:
Lors de la première exécution de entrerNotes, un formulaire demande le numéro du groupe concerné. La soumission du formulaire se fait par la méthodes get. Ce formulaire est reproposé (avec un message d'erreur) si le numéro :
*n'a pas été saisi,
*ou est supérieur à une constante définie dans le script.
Voici mon code, mais j'arrive pas à bien placer mes if
<?php
error_reporting(E_ALL);
include "entete.php";
echo DOCTYPE_XHTML_BASIC_11."\n";
echo HTML_FR."\n";
echo "<head>";
echo META_TYPE_TEXT_HTML_UTF8."\n";
echo "<title> tableau associatif </title> \n";
echo "</head> \n";
echo "<body>";
$$$$ LA EST CITUE MON PROBLEME $$$$
if (!empty($_GET['id']))
$match="#^[1-9]{7}$#";
if (preg_match($match,$_GET['id'])
echo $_GET['id'];
else{
echo
echo "<form methode ='POST' action=".$_SERVER['PHP_SELF'].">";
?>
<fieldset> <legend> Saisir votre numero d'Etudiant </legend>
<label for="id-etu"> Identifiant </label>
<input type='text' id="id" name="id"/>
<input type='submit' value='valider' />
</fieldset>
</form>
<?php
}
echo "</body>";
echo "</html>";
?>
Voici l'enoncer de mon probleme:
Lors de la première exécution de entrerNotes, un formulaire demande le numéro du groupe concerné. La soumission du formulaire se fait par la méthodes get. Ce formulaire est reproposé (avec un message d'erreur) si le numéro :
*n'a pas été saisi,
*ou est supérieur à une constante définie dans le script.
Voici mon code, mais j'arrive pas à bien placer mes if
<?php
error_reporting(E_ALL);
include "entete.php";
echo DOCTYPE_XHTML_BASIC_11."\n";
echo HTML_FR."\n";
echo "<head>";
echo META_TYPE_TEXT_HTML_UTF8."\n";
echo "<title> tableau associatif </title> \n";
echo "</head> \n";
echo "<body>";
$$$$ LA EST CITUE MON PROBLEME $$$$
if (!empty($_GET['id']))
$match="#^[1-9]{7}$#";
if (preg_match($match,$_GET['id'])
echo $_GET['id'];
else{
echo
echo "<form methode ='POST' action=".$_SERVER['PHP_SELF'].">";
?>
<fieldset> <legend> Saisir votre numero d'Etudiant </legend>
<label for="id-etu"> Identifiant </label>
<input type='text' id="id" name="id"/>
<input type='submit' value='valider' />
</fieldset>
</form>
<?php
}
echo "</body>";
echo "</html>";
?>
A voir également:
- Comment traiter un formulaire??
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
- Un formulaire rempli - Guide
1 réponse
Salut,
Bizarre la façon comment tu écris ton code !
Mettez en résolu quand c'est résolu -.- ...
Bizarre la façon comment tu écris ton code !
<?php define('MAX_VAL', 20); $rep = ''; if(isset($_GET['id'])) { if(!is_int($_GET['id'])) $rep = '<p>Veuillez insérer un nombre entier.</p>'; elseif($_GET['id'] > MAX_VAL) $rep = '<p>Numéro de groupe invalide.</p>'; else { //Numero de groupe valide //Traitements } } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Tableau associatif</title> </head> <body> <?php if(isset($_GET['id']) AND !empty($rep)) { echo $rep; echo '<form method="get" action="#"> <fieldset> <legend>Saisir votre numero d'Etudiant</legend> <label for="id-etu">Identifiant</label> <input type='text' id="id" name="id"/> <input type='submit' value='valider' /> </fieldset> </form>'; } else { } ?> </body> </html>
Mettez en résolu quand c'est résolu -.- ...
Voici le code avec tes corrections, mais la je n'ai plus de message d'erreur mais rien n'est affiché non plus :-(
<?php
error_reporting(E_ALL);
include "entete.php";
echo DOCTYPE_XHTML_BASIC_11."\n";
echo HTML_FR."\n";
echo "<head>";
echo META_TYPE_TEXT_HTML_UTF8."\n";
echo "<title> Saisir son groupe </title> \n";
echo "</head> \n";
echo "<body>";
define('MAX_VAL', 20);
$rep = '';
if((isset($_GET['id']))&& (!empty($_POST['id']))){
if(!is_int($_GET['id'])) $rep = '<p>Veuillez insérer un nombre entier.</p>';
elseif($_GET['id'] > MAX_VAL) $rep = '<p>Numéro de groupe invalide.</p>';
else {
echo $_GET['id'];
echo "<form method ='get' action=".$_SERVER['PHP_SELF'].">";
?>
<fieldset> <legend> Saisissez votre numero de groupe </legend>
<label for="id-etu"> N°Grp: </label>
<input type='text' id="id" name="id"/>
<input type='submit' value='valider' />
</fieldset>
</form>
<?php
}
}
echo "</body>";
echo "</html>";
?>
Quant au reste, et ben il est préférable de mettre ton script PHP avant tout affichage, et non pas mélangé le tout sans aucune structure !
Sinon, si j'ai bien compris, l'utilisateur arrive sur une page, il trouve le formulaire, il y mets son numéro de groupe, et il envoie le formulaire, si le numéro est correct, alors on affiche ce numéro, sinon, on ré-affiche le formulaire avec un message d'erreur.