Page 1 sur 1

Comment coder une redirection automatique ?

Posté : 17 mai 2005, 17:57
par Invité
Bonjour, je voudrais savoir comment on peut faire pour coder en PHP une redirection automatique.

Je m'explique :

J'ai un forum en PHP. lorsqu'on tape l'adresse du forum, il lance automatiquement un module en PHP. Depuis quelque temps, j'ai déplacer mon forum dans un autre répertoire.

Je voudrais donc modifier le module en PHP (celui du répertoire initial) pour qu'il lance automatiquement un autre module en PHP se trouvant dans un autre répertoire.


Si quelqu'un pouvait m'aider (je débute en PHP)

Posté : 17 mai 2005, 17:58
par ouckileou
// rien avant
header("Location: <url>");
http://fr.php.net/header

Posté : 17 mai 2005, 18:00
par Invité
Si j'ai bien compris, je vire TOUT ce qu'il y a dans le module en PHP et je met juste :


// rien avant
header("Location: www.toto.com/xxx/titi.php");


C'est bien çà ?

Posté : 17 mai 2005, 18:09
par ouckileou
en fait non

j'ai été vite tu peux mettre du PHP avant (des tests, des connexions vers une Bdd)

mais pas de sortie HTML ou autre
N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé, soit par des lignes HTML habituelles dans le fichier, soit par des affichges PHP. Une erreur très classique est de lire un fichier avec include() ou require(), et de laisser des espaces ou des lignes vides, qui génèreront un affichage avant que la fonction header() ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards.

Posté : 17 mai 2005, 18:09
par Cyrano
C'est ça, mais la condition, c'est que tu n'envoies pas d'en-tête http avant cette ligne, sinon, ça va bugguer.

Tu peux avoir par exemple un traitement complet et à la fin en fonction de tel ou tel résultat, tu rediriges vers telle ou telle page: à ce stade, rien n'a été envoyé au navigateur et ça va fonctionner.

Posté : 17 mai 2005, 18:13
par Invité
voici ce que j'ai mis :

/////////////////////////////////////////////////
<?php

header("Location: www.aaaa.com/PHPBB2/portal.php");


?>

///////////////////////////::

C'est bon ou pas ?

Posté : 17 mai 2005, 18:18
par Cyrano
presque: vire la ligne vide entre <?php et header... par précaution.

Posté : 17 mai 2005, 18:57
par pjl
Si c'est un répertoire complet que tu as déplacé, tu peux aussi gérer celà avec un .htaccess.