Formulaire et PHP

Fermé
xflagg Messages postés 13 Date d'inscription mercredi 30 août 2006 Statut Membre Dernière intervention 15 février 2013 - 1 mars 2008 à 18:04
xflagg Messages postés 13 Date d'inscription mercredi 30 août 2006 Statut Membre Dernière intervention 15 février 2013 - 6 mars 2008 à 08:20
Bonjour,

je souhaite ajouter dans une page web un morceau de formulaire où l'internaute devra saisir une donnée dans un champs. Suivant la réponse qui aura été saisi, je voudrais que l'action "valider" rernvoi soit :
- vers une nouvelle page (si la réponse est bonne)
- soit rester sur la même page si la réponse est fausse.

Voici le code de mon fichier monformulaire.php

<?php

if (isset($_POST['reponse']) && $_POST['reponse'] == 'labonnereponse')
header('Location: verslebonfichier.php');
else
header('Location: monformulaire.php');

?>
<form name="formulaire" method="post" action="monformulaire.php">
<p><label for="saise">Saisir une réponse :</label>
<input type="text" id="saisie" name="saisie" size="30" /></p>
<p><input type="submit" name="soumission" value="Valider" /></p>
</form>

2 problèmes se posent :

- quelque soit la donnée saisie, le renvoi ne se fait pas
- jai le message d'erreur suivant qui apparait en haut de ma page
Warning: Cannot modify header information - headers already sent by (output started at c:\weblocal\site1\www\test2.php:4) in c:\weblocal\site1\www\test2.php on line9.

Merci d'avance de votre aide.

3 réponses

Chrisix Messages postés 60 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 3 décembre 2008 60
1 mars 2008 à 19:05
essaie ça...

<?php
if (isset($_POST['reponse'])) {
if ($_POST['reponse'] == 'labonnereponse') header('Location: verslebonfichier.php');
}
?>
<form name="formulaire" method="post">
<p><label for="saise">Saisir une réponse :</label>
<input type="text" name="reponse" size="30" value=<?php echo $_POST['reponse']?>"></p>
<p><input type="submit" value="Valider"></p>
</form>
0
xflagg Messages postés 13 Date d'inscription mercredi 30 août 2006 Statut Membre Dernière intervention 15 février 2013
1 mars 2008 à 20:10
Merci beaucoup ca fonctionne bien :)
0
xflagg Messages postés 13 Date d'inscription mercredi 30 août 2006 Statut Membre Dernière intervention 15 février 2013
6 mars 2008 à 08:20
Bonjour,

jai denouveau un soucis.
Je voudrais que la réponse saisie soit analysée comme suit :
- les majuscules sont transformées en minuscules (jy arrive avec la fonction strtolower();
- les caractères accentués sont remplacés par des non accentués (la fonction strtr me pose problème);

une fois ces deux fonctions appliquées je voudrais que la réponse saisie soit comparée à l'élèment attendu

<?php
if (isset($_POST['reponse'])) {
if ((strtolower($_POST['reponse'])=='réponse') && strtr($_POST['reponse']),"é","e") header('Location: suite.php');
else header('Location: index.php');}
?>

exemple si j'attends la réponse : reponse et que RéPonse est saisi :
srttolower transforme en réponse
et strtr trasforme en reponse.

ca fonctionne très bien seuleument avec le strtolower(), je plante au niveau du strtr.

merci davance de votre aide.
0