[PHP] Probleme de header avec de l'HTML

Résolu/Fermé
Simmm - 1 juil. 2008 à 21:18
JuB0 Messages postés 654 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 6 mai 2012 - 2 juil. 2008 à 13:58
Bonjour,
j'ai un soucis avec mon code php associé à l'html. Lorsque que le code php n'est pas avec de l'html ça marche sans soucis.
Mais dès que je rajoute de l'html ça ne marche...

Je ne comprend pas ...si quelqu'un connait une solution à mon probleme ?

je vous met le code :

<html>


<title>depart</title>
<style type="text/css">
body {
background-color: #5affc8;
}

</style>
<body>
<?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 n'existe pas
// Pour accélérer les traitements je termine la balise PHP.
if (@!$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 ($txt=="REPONSE")
{
echo("<h1>C'EST JUSTE !!!</h1>");
// C'est ici que tu peux utiliser ton renvoi avec Location
header ("Location: index.php");
exit;

}
// 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>");
}
echo("Valeur de \$txt = $txt");
?>
</body>
</html>
A voir également:

5 réponses

BlueMind Messages postés 583 Date d'inscription vendredi 27 juin 2008 Statut Membre Dernière intervention 22 juillet 2008 159
2 juil. 2008 à 08:18
Salut,

Ne faudrait-il pas fermer les balises php ?
0
JuB0 Messages postés 654 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 6 mai 2012 81
2 juil. 2008 à 09:27
la fonction header doit être appelée avant tout code html
-> http://fr3.php.net/header
0
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

Merci de ton aide mais même en mettant le code php au tout début...ça ne marche pas...
<?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: index.html"); //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>");
}
?> <html><head></head>
<body></body></html>
0
JuB0 Messages postés 654 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 6 mai 2012 81
2 juil. 2008 à 13:35
???
Non tu n'as pas compris ...
la fonction header() doit etre appelé avant tout affichage html, il te le dit en message d'erreur "headers already sent by".
un echo("toto") avant la fonction header, et ça ne marche pas ...
0
C'est ça y est ça marche, en fait il y a vait le forumlaire qui était au milieu du php et donc ça ne marchait pas
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
JuB0 Messages postés 654 Date d'inscription jeudi 27 décembre 2007 Statut Membre Dernière intervention 6 mai 2012 81
2 juil. 2008 à 13:58
OUI
0