Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/03/2007, 12h15   #1
Membre régulier
 
Fabien M.
Inscription : décembre 2003
Messages : 173
Détails du profil
Informations personnelles :
Nom : Fabien M.
Âge : 31
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : décembre 2003
Messages : 173
Points : 75
Points : 75
Envoyer un message via MSN à Golork
Par défaut "header()" ne marche pas

Bonjour à tous, voilà j'ai un problème sur mon site : j'avais prévu de faire une redirection si un admin est connecté au site vers une autre page. Mais voilà la fonction header ne se lance pas alors que sur mon ordi avec EsayPhp ça fonctionne !!!
Voilà comment j'ai fait :
Code :
1
2
3
4
5
6
 
if($login=='admin')
{
	header("Location: mondossier/mapage.php?lng=".$langue);
	exit;
}
J'ai essayé de mettre un "echo 'hello' " pour savoir si je rentrais bien dans la condition si et oui je rentre dedans mais la fonction header() ne fait rien...
j'ai aussi essayé avec :
header("Location: mondossier/mapage.php?lng=$langue");

Je comprends pas pourquoi ??

note : j'utilise les frames et j'ai bien vérifié que mon chemin est bon
Golork est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/03/2007, 14h18   #2
Expert Confirmé
 
Avatar de sekaijin
 
Femme
Urbaniste
Inscription : juillet 2004
Messages : 1 426
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 48
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Urbaniste
Secteur : Santé

Informations forums :
Inscription : juillet 2004
Messages : 1 426
Points : 2 813
Points : 2 813
Utilise la directive error_reportting(E_ALL); pour avoir les message d'erreur quelque soit leur niveau d'erreur
avec display_error(true); pour qu'il soint affichés.

je supose que ces quelques ligne ne sont pas au début du script

pour que la fonction header fonction il ne faut rien avoir envoyé au client
donc pas de echo pas de print avant le header()

mais il y a plus insidueux

il ne faut pas de caractères hors de <?php ?> avant l'appel

donc si tu fait un include il ne faut pas de caractère \n apres le ?>

zend préconise de ne pas mettre de ?> en fin de fichier s'il n'y a pas de sortie à faire.

bref avec les directive tu devrais avoir un message du genre
Warning: Cannot modify header information - headers already sent by (output started at thisfile.php:37) in monfichier.php on line 483

il suffit alors d'aller voir le fichier pour tourver pourquoi il a envoyé un truc au client et si c'est necessaire

si c'est le cas il te faut revoir ton prog
A+JYT
sekaijin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/03/2007, 14h43   #3
Membre confirmé
 
Développeur Web
Inscription : septembre 2006
Messages : 215
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : septembre 2006
Messages : 215
Points : 246
Points : 246
Salut,

le probleme vient des guillements je pense

Code :
1
2
3
4
5
6
 
if($login=='admin')
{
	header("Location: mondossier/mapage.php?lng={$langue}");
	exit;
}
edit: lol vi ... ca revient un peu au même ...

sahid
sahid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/03/2007, 16h51   #4
Membre régulier
 
Fabien M.
Inscription : décembre 2003
Messages : 173
Détails du profil
Informations personnelles :
Nom : Fabien M.
Âge : 31
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : décembre 2003
Messages : 173
Points : 75
Points : 75
Envoyer un message via MSN à Golork
ok merci sekaijin en fait c'était à cause d'une ligne en HTML que j'avais mis au tout début de mon script (<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">)

maintenant que je l'ai placée après ma condition ça fonctionne.
Golork est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h05.


 
 
 
 
Partenaires

Hébergement Web