Problème de header

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


xdeslandes
WRInaute impliqué
WRInaute impliqué
 
Messages: 313
Inscription: Mer Déc 29, 2004 20:17

Problème de header

Message le Mar Fév 07, 2006 15:00

Bonjour,
mon site contient des pages qu'il me faut protéger. On s'identifie, puis on accède à des pages commençant par :
Code: Tout sélectionner
session_start();
if (! empty($_SESSION))   
{   $mode = $_SESSION ['mode'];
   $auth = $_SESSION['auth'];
}
else // si la session commence, on passe en mode user par défaut
{   $mode = "user";
   $auth = "no";
   $_SESSION['mode'] = $mode;
   $_SESSION['auth'] = $auth;
}
if(! isset($_SESSION)) $auth = "no";

// si l'identification n'est pas faite
if ($auth == "no")

   header ("Location : http://www.monsite.fr/");
   exit();
}

Mais cela renvoie une page vide (à cause du exit(); je pense). On n'est pas redirigé.
Sur le même répertoire, j'ai essayé le script essai.php suivant :
Code: Tout sélectionner
<?php
header("Location: http://www.monsite.fr/");
?>

et la redirection se fait bien. Alors, où est mon problème ? La doc php me dit que le paramètre optionnel n'est qu'à mettre si on ne veut PAS écraser les en-tête précédents éventuels, mais ce n'est pa smon cas...
NB. Cette méthode a pourtant bien fonctionné sur une autre plateforme.
Merci de vos conseils.


e-kiwi
Modérateur
Modérateur
 
Messages: 13817
Inscription: Mar Déc 23, 2003 9:04

Message le Mar Fév 07, 2006 15:23

Procède par étape
déjà fais un echo $auth pour savoir ce qu'il y a dans la variable
tu dis que c est peut-etre dû au exot(), essaye donc sans


xdeslandes
WRInaute impliqué
WRInaute impliqué
 
Messages: 313
Inscription: Mer Déc 29, 2004 20:17

Message le Mar Fév 07, 2006 16:01

Merci e-kiwi !
1- sans le exit(); il ne se passe rien : la page s'affiche, même aux non identifiés. C'est le exit(); qui me renvoie une page vide.
2- le test if ($auth == "no") se fait bien, j'ai vérifié.

C'est vraiment un problème avec le header. Mais je n'ai aucun message d'erreur (genre : "un truc a été renvoyé au navigateur avant l'appel à header..."). :(


e-kiwi
Modérateur
Modérateur
 
Messages: 13817
Inscription: Mar Déc 23, 2003 9:04

Message le Mar Fév 07, 2006 17:00

if ($auth == "no")
{
echo "toto"
}
marche ?

essaye une redirection avec une adresse non absolue peut-etre (car possible que ton session_start() sur l'autre page ne marche pas si tu fais un header en adresse absolue)


correiaj
WRInaute accro
WRInaute accro
 
Messages: 1106
Inscription: Lun Avr 25, 2005 22:39

Message le Mar Fév 07, 2006 17:17

header ("Location : http://www.monsite.fr/");


Il y a une erreur de frappe: pas d´espace après location....


xdeslandes
WRInaute impliqué
WRInaute impliqué
 
Messages: 313
Inscription: Mer Déc 29, 2004 20:17

Message le Mar Fév 07, 2006 17:34

Merci correiaj !!! Ce fu**ing espace entre Location et : !!
Merci à vous tous ! Ca marche maintenant.


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités