Redirection en php ...
Résolu
kevin76110
Messages postés
5350
Statut
Membre
-
SlyK Messages postés 1060 Statut Contributeur sécurité -
SlyK Messages postés 1060 Statut Contributeur sécurité -
Bonjour,
j'ai une page en php ( après un formulaire).
Cette page envoi un email etc.
Et, à la fin, j'aimerais faire une redirection, en fonction du résultat d'un des champs du formulaire.
J'ai donc fait une boucle (qui fonctionne):
if ($prise_text == "champs_1") {
header('Location: page1.php');
}
Si je fais un echo toto; à la placer de header, cela me renvoi bien toto.
Mais la page n'est pas redirigée.
Est-ce que c'est parce qu'il y a du code avant?
Comment faire cette redirection ?
Merci d'avance.
K.
°º¤ø,¸¸,ø¤º°'°º¤ø, Contributeur CCM °º¤ø,¸¸,ø¤º°'°º¤ø,
Sous Linux, 99% des bugs se situent entre le clavier et la chaise de bureau...
j'ai une page en php ( après un formulaire).
Cette page envoi un email etc.
Et, à la fin, j'aimerais faire une redirection, en fonction du résultat d'un des champs du formulaire.
J'ai donc fait une boucle (qui fonctionne):
if ($prise_text == "champs_1") {
header('Location: page1.php');
}
Si je fais un echo toto; à la placer de header, cela me renvoi bien toto.
Mais la page n'est pas redirigée.
Est-ce que c'est parce qu'il y a du code avant?
Comment faire cette redirection ?
Merci d'avance.
K.
°º¤ø,¸¸,ø¤º°'°º¤ø, Contributeur CCM °º¤ø,¸¸,ø¤º°'°º¤ø,
Sous Linux, 99% des bugs se situent entre le clavier et la chaise de bureau...
2 réponses
-
Bonjour,
header tout comme session_start() doit être placé avant tout code HTML.
Pour faire une redirection utilise la balise <meta>.echo ('<meta http-equiv="refresh" content="0;url=TA_PAGE.php" />');
N'oublie pas de stopper l'exécution du code après cette ligne, pour éviter qu'il continue à lire la page durant le chargement.die;
Cordialement. -
<?php ob_start(); ?>
tout le reste du code<?php if ($prise_text == "champs_1") { header('Refresh: 0.001; url=/page1.php'); ob_flush(); } if ($prise_text == "champs_2") { header('Refresh: 0.001; url=/page2.php'); ob_flush(); } ?>