Mot de Passe en php ...

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

01 juil. 2008, 20:46

<?php // Je récupère ma valeure du formulaire
// Remarque que texte correspond au nom du champ input dont je veut récupérer la
// valeur
$txt=$_POST['texte'];
// Si cette valeur existe
if (trim($txt) == "") 
{
?>
<form method="post" action="depart.php"
 name="formu" id="formu"><input name="texte">
  <input name="envoyer" value="Valider la réponse"
 type="submit">
</form>
<?php 
}
// Sinon si la réponse vaut REPONSE que je considère être la bonne réponse,
// j'affiche n message qui me dit que c'est juste...
else if (strtoupper(trim($txt)) == "REPONSE")
{
// C'est ici que tu peux utiliser ton renvoi avec Location
header ("Location: http://simmm.free.fr/");
exit(); //arrêt après redirection
}
// Toute autre valeur de $texte est fausse donc on affiche un message qui
// indique que la réponse est incorrecte.
else
{
echo("<h1>C'EST FAUX !!!</h1>");
}
?> 
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Invité
Invité n'ayant pas de compte PHPfrance

01 juil. 2008, 20:49

En fait ça ne marche pas que quand je rajoutes du html... si je mets que du php ça fonctionne

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

01 juil. 2008, 20:51

Il ne faut ja mais mettre d'echo avant un header() et en plus il faut toujours arrêter le programme juste après. Car header() est un redirecteur qui charge et envoi toute une réponse HTTP à partir d'une page externe.
Le code HTML qui se trouve dans la séquence d'exécution avant un header() PHP est considéré comme un echo.
<?php // Je récupère ma valeur du formulaire
// Remarque que texte correspond au nom du champ input dont je veut récupérer la
// valeur
$txt=$_POST['texte'];
// Si cette valeur existe
if (trim($txt) == "") 
{
?>
<form method="post" action="depart.php"
 name="formu" id="formu"><input name="texte">
  <input name="envoyer" value="Valider la réponse"
 type="submit">
</form>
<?php 
}
// Sinon si la réponse vaut REPONSE que je considère être la bonne réponse,
// j'affiche n message qui me dit que c'est juste...
else if (strtoupper(trim($txt)) == "REPONSE")
{
// C'est ici que tu peux utiliser ton renvoi avec Location
header ("Location: http://simmm.free.fr/"); //Aucun echo avant ce header
exit(); //arrêt après redirection
}
// Toute autre valeur de $texte est fausse donc on affiche un message qui
// indique que la réponse est incorrecte.
else
{
echo("<h1>C'EST FAUX !!!</h1>");
}
?> 
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Invité
Invité n'ayant pas de compte PHPfrance

02 juil. 2008, 12:36

Warning: Cannot modify header information - headers already sent by (output started at /mnt/167/sdb/9/d/simmm/depart.php:2) in /mnt/167/sdb/9/d/simmm/depart.php on line 22

ça me met ça comme message d'erreur !

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

02 juil. 2008, 13:26

C'est normal, as-tu lu ce que je t'ai expliqué dans mon message précédent. Je le répète :
Il ne faut pas mettre d'echo avant un header() et en plus il faut toujours arrêter le programme juste après. Car header() est un redirecteur qui charge et envoi toute une réponse HTTP à partir d'une page externe.
Le code HTML qui se trouve dans la séquence d'exécution avant un header() PHP est considéré comme un echo. Il ne faut pas mettre alors du code HTML avant un header();
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Invité
Invité n'ayant pas de compte PHPfrance

02 juil. 2008, 13:41

Merci c'est bon ça marche !!!
vous pouvez aller voir le résultat à cette adresse !!
http://simmm.free.fr/depart.php

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

02 juil. 2008, 14:09

Modération :
Simmm, si ta question est résolue, pense à ajouter le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.
Tu peux réaliser cette opération en cliquant sur le bouton Image en haut à gauche de ce sujet.

Invité
Invité n'ayant pas de compte PHPfrance

02 juil. 2008, 14:40

Ok et encore merci pour votre aide !!!

Mammouth du PHP | 965 Messages

02 juil. 2008, 14:43

Pour tester si un formulaire est passer il y a mieux que ca :

en utilisant if($_POST){ if($_POST['texte']) { ou if(isset($_POST['texte'])){ tu n'as pas le soucis, car il verrifie déjà que le formulaire a été valider avant de tester les valeurs de ce formulaire.