probleme avec header

francois92911
Invité n'ayant pas de compte PHPfrance

18 mai 2007, 17:43

Bonjour,
ma redirection header ne marche pas. Pourtant mon code est ultra simple.
<?
function quizz()
{
if ($_POST['question1']=="bonne reponse")
{
header("Location: question2.php");  // en chemin absolu ca ne marche pas non plus !
}
else
{
echo "mauvaise reponse !";
}
}
?>
La redirection ne se fait pas. J'ai bien vérifié qu'il n'y ait pas d'espace qui traine... Queslqu'un a une idée ? merci d'avance.

ViPHP
ViPHP | 3607 Messages

18 mai 2007, 18:05

et si tu faits ça:
<?php
function quizz()
{
    if ($_POST['question1']=="bonne reponse")
    {
        echo "je suis dans le if";
        header("Location: question2.php");  // en chemin absolu ca ne marche pas non plus !
     }
     else
     {
        echo "mauvaise reponse !";
     }
}
?> 
qu'est-ce que ça donne?

Mammouth du PHP | 991 Messages

18 mai 2007, 20:08

essaye d'enlever l'espace entre location et le nom du fichier
 header("Location:question2.php");
DevOps, Symfony4, Hoa

Mammouth du PHP | 686 Messages

18 mai 2007, 22:53

le hearder doit se mettre avant entre les balises <Head> et </head> de ton code html

ViPHP
ViPHP | 5924 Messages

18 mai 2007, 23:01

le hearder doit se mettre avant entre les balises <Head> et </head> de ton code html
Non, il ne faut pas confondre les header envoyés par php et les header incorporés dans le code html. Les header envoyés par php doivent être simplement envoyés avant tout caractère.

Mammouth du PHP | 686 Messages

19 mai 2007, 00:07

ok milles excuses :lol:

ViPHP
ViPHP | 1996 Messages

19 mai 2007, 13:12

Est ce que ta fonction est inclue dans une autre ?
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

francois92911
Invité n'ayant pas de compte PHPfrance

19 mai 2007, 13:15

ca ne marche toujours pas... je ne comprends pas. En plus j'utilise des header dans d'autres pages et ceux la marchent très bien. Pour répondre au msg de jojolapine si je fais
if ($_POST['question1']=="bonne reponse")
{
echo "je suis dans le if";
header ("Location: question2.php");
}
pas de probleme, "je suis dans le if" s'affiche bien, mais la redirection ne se fait pas.

J'ai aussi essayé d'enlever l'espace, j'ai aussi essayé de remplacer les " par des ' ... mais ca ne marche pas. Bon... je vais faire autrement, par exemple afficher un lien vers la question 2... moins pratique mais la je n'ai pas le choix...
if ($_POST['question1']=="bonne reponse")
{
echo "<a href='question2.php'>aller à la question 2</a>";
}
Merci pour vos réponses

Mammouth du PHP | 991 Messages

19 mai 2007, 13:18

ou alors fait une redirection meta
DevOps, Symfony4, Hoa

ViPHP
ViPHP | 3607 Messages

19 mai 2007, 13:21

essaye d'enlever l'espace entre header et la parenthèse...?