Redirection header

Signaler
Messages postés
11
Date d'inscription
mardi 4 mai 2004
Statut
Membre
Dernière intervention
16 janvier 2006
-
Messages postés
861
Date d'inscription
mardi 26 mars 2002
Statut
Membre
Dernière intervention
29 novembre 2006
-
Bonsoir,

J'ai un problème de redirection de page, pourtant j'utilise la fonction header.

Les pages A et B sont des pages.php qui gèrent des templates.

J'ai une page A avec des liens qui renvoie sur une page B qui contient un formulaire.

Lorsque le formulaire de la page B a été validé correctement, je souhaite après un test conditionnel retourner sur la page A avec le commande header mais ça ne fonctionne pas. Je reste sur la page B avec un formulaire vierge.

Voici mon code de redirection :

if($ok =TRUE){
header("Location:CompteClient.php?act=aff");
}

Merci de m'aider.

10 réponses

Messages postés
861
Date d'inscription
mardi 26 mars 2002
Statut
Membre
Dernière intervention
29 novembre 2006
1
Sael og blesud

Voir ob_start(); ... Sur fr.php.net ...

Bon courage ...

NB : Si la réponse vous convient merci de l'accepter pour fermer ce thread ...

Sigurjón Bírgir Sigurðssón aka Sjón
Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015

Et laisse un espace après le : de location... .. . ;o)

l'homme est un loup pour l'homme... .. .
Messages postés
11
Date d'inscription
mardi 4 mai 2004
Statut
Membre
Dernière intervention
16 janvier 2006

Bonjour,

Je ne comprends pas pourquoi il faut que j'utilise ob_start() pour pouvoir rediriger ma page.

J'ai mis un espace en plus après "location" mais aucun changement.

Merci
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,

if($ok =TRUE){
header("Location:CompteClient.php?act=aff");
}

c'est un drôle de test.
On assigne la valeur TRUE à $ok, donc ta condition est toujours vraie.

Une comparaison, ce serait plutôt
if ($ok === true) {...}

Ceci dit, ça n'explique pas pour tu n'es pas redirigé, tu devrais toujours être redirigé avec ce code.
Mets le error_reporting à E_ALL dans ton php.ini, et resteste ton code. Tu devrais avoir une erreur qui nous aiguillera.

Pour ob_start () : si tu affiches du html avant ton header, le header ne peut pas marcher, car tu as déjà envoyé l'en-tête http.

Et salut Sjón
;-) Ca va ?
Messages postés
861
Date d'inscription
mardi 26 mars 2002
Statut
Membre
Dernière intervention
29 novembre 2006
1
Sael og blesud



Le bonjour très cher Malalam .-) On fait allez en fait ... La
rééducation fait son travail ... Autrement quelques soucis sur une gpo
en evs ou mais bon je vais trouver ... ( Saloperie de µsoft Windows
2003 ;-) ) ... Et vous comment allez vous ?

Bon courage ...

NB : Si la réponse vous convient merci de l'accepter pour fermer ce thread ...

Sigurjón Bírgir Sigurðssón aka Sjón
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
"J'ai mis un espace en plus après "location" mais aucun changement." Trompé d'espace :o

header("Location: CompteClient.php?act=aff");
Messages postés
459
Date d'inscription
dimanche 9 janvier 2005
Statut
Membre
Dernière intervention
11 mai 2013

La fonction Header(Location)
n'axepte pas les variable $_GET['var']


je te propose :


<?php


if($ok == TRUE) //Si $ok est égale TRUE
{
//on tente une redirection en PHP
//(en masquant les erreur éventuelle)
$redirect = @header('Location: ton_addr.php');


if(!$redirect) //Si la redirection en php échoue .....
{

//On l'effectue en javascript ......
echo "<script language='javascript'>\r\n";
echo " location.href='ta_page.php';\r\n";
echo "</script>";



}


}
?>

alors sa te va ?
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
"La fonction Header(Location)
n'axepte pas les variable $_GET['var']"

Depuis quand...?

Les développeurs de php changent le comportement de leurs fonctions et ne me disent rien ?? On ne me dit jamais rien à moi :-(

Trève de plaisanterie : la fonction header() accepte tout à fait le passage d'arguments, le problème n'est pas là.
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Sjón => je vais bien merci, j'ai -encore- changé de société ;-) J'ai enfin trouvé à Aix en Provence, chez moi :-) Un bon boulot en plus, très intéressant, en tant que chef de projets, pour le développement d'un gros SAE logistique. Donc tout va bien :-)
Messages postés
861
Date d'inscription
mardi 26 mars 2002
Statut
Membre
Dernière intervention
29 novembre 2006
1
Sael og blesud



Malalam >> C'est génial ... ;-) Enfin surtout pour vous ^^ De
retrouver votre femme tout les soirs cela donne des regrets non ? ;-)
... En même temps cela évite les tableaux de smileys ... ;-) ... Non
sérieusement je suis très heureux pour vous ... ;-)

Bon courage ...

NB : Si la réponse vous convient merci de l'accepter pour fermer ce thread ...

Sigurjón Bírgir Sigurðssón aka Sjón