Page 1 sur 1

Fonction pour rediriger

Posté : 26 févr. 2013, 17:37
par linux21
Bonjour,
j'ai mis en place une petite fonction qui m'aide à rediriger automatiquement. Ca marche parfaitement sous Chrome ou Firefox, mais plante complètement sous IE (refresh intempestifs).

Voilà la fonction en question:

Code : Tout sélectionner

function redirige($url) { die('<meta http-equiv="refresh" content="0;'.$url.'">'); }
Merci pour votre aide :)

Re: Fonction pour rediriger

Posté : 26 févr. 2013, 17:51
par dix2
salut,

il faut utiliser la fonction header()

@+
dix2

Re: Fonction pour rediriger

Posté : 26 févr. 2013, 17:57
par linux21
De mémoire, il me semble que j'avais utilisé cette fonction pour justement parrer à header(), mais je ne me souviens plus pour quel bug. Il me semble que c'est à cause du fait qu'il faut envoyer header avant toute ecriture html. Impossible dans mon cas.

Il n'y a pas d'autres alternatives étant compatible avec l'ensemble des navigateurs ?

Re: Fonction pour rediriger

Posté : 26 févr. 2013, 18:40
par dix2
dans ce cas, tu peux utiliser les fonctions ob_start(), ob_flush(), ob_get_contents() pour mettre les données dans un tampon

@+
dix2

Re: Fonction pour rediriger

Posté : 26 févr. 2013, 19:02
par yann18
salut,
tu peux utiliser la fonction http_redirect:

http_redirect
 bool http_redirect ([ string $url [, array $params [, bool $session = false [, int $status = 0 ]]]] )

Re: Fonction pour rediriger

Posté : 04 mars 2013, 15:32
par linux21
Bonjour,
merci pour votre aide.

Je n'arrive pas à utiliser ta fonction http_redirect, malgré le manuel. Concrètement, pour rediriger vers "index.php?page=accueil" (pour l'exemple), je fais comment ?

Avec ma fonction redirige, c'était très simple:

Code : Tout sélectionner

function redirige($url) { die('<meta http-equiv="refresh" content="0;'.$url.'">'); }

Code : Tout sélectionner

if(empty($blabla)) { Redirige('index.php?page=accueil'); } else { blabla }

Re: Fonction pour rediriger

Posté : 07 mars 2013, 10:02
par linux21
:oops: