Warning: Cannot modify header information !

Eléphant du PHP | 187 Messages

21 nov. 2012, 12:41

cad il faut redéfinir les var de session?

ViPHP
ViPHP | 2577 Messages

21 nov. 2012, 12:54

Il doit y avoir un $_SESSION['login'] = "quelque chose" quelque part.

Edit, Enfin les variables doivent être alimenter au moins une fois pour être visible lors du traitement des pages suivantes. Il faut donc vérifier que lors de la saisie du login tu l'enregistres bien (erreur sur une condition, faute de frappe...)

Mammouth du PHP | 2278 Messages

21 nov. 2012, 13:18

Si je me fie à la doc:
http://fr2.php.net/manual/fr/function.header.php

echo "inexistants";
header('location:/basketball/index.php', TRUE);
devrait faire l'affaire
Où vois-tu dans la doc qu'on peut envoyer des données avant un header ?
Il est justement indiqué le contraire :
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 affichages PHP.
et ce code qui fonctionne parfaitement, c'est quoi:
<?PHP

header("Content-type: image/png");
echo ("vas-y");

header("Location: http://$serveur/kaligraphe/bilan_final.php", replace); /* Redirection du navigateur */
?>
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Eléphant du PHP | 267 Messages

21 nov. 2012, 13:38

Si je me fie à la doc:
http://fr2.php.net/manual/fr/function.header.php

echo "inexistants";
header('location:/basketball/index.php', TRUE);
devrait faire l'affaire
Où vois-tu dans la doc qu'on peut envoyer des données avant un header ?
Il est justement indiqué le contraire :
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 affichages PHP.
et ce code qui fonctionne parfaitement, c'est quoi:
<?PHP

header("Content-type: image/png");
echo ("vas-y");

header("Location: http://$serveur/kaligraphe/bilan_final.php", replace); /* Redirection du navigateur */
?>
c'est parce qu'il y a une bufferisation automatique avec ta configuration
les données ne sont pas envoyées mais mises dans un tampon
d'ailleurs, si tu insères un ob_flush() entre le echo et le header, tu as bien une erreur, ce qui confirme la bufferisation

ViPHP
ViPHP | 4039 Messages

21 nov. 2012, 14:30

oui J'ai le charset=utf-8",editeur: dreamweaver
pour le BOM,je pense ça veut dire le blanc qui se trouve entre les balises??
Si BOM il y a, il est invisible dans ton éditeur. Par contre, l'interpréteur PHP le voit, lui.

Pour être sur que ton problème ne vient pas de la, vérifie qu'il est bien désactivé. Dans propriétés de page (dans "modifier" ou quelque chose comme ça, en partant du fichier en question bien sur), sous encodage, assure-toi que la signature unicode (BOM) et décochée. S'il était coché, il est probable que ton problème venait de la.

S'il est déjà décoché, ton problème vient effectivement d'ailleurs :?
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

ViPHP
ViPHP | 2577 Messages

21 nov. 2012, 14:35

Il me semble que certaine installation de php activent le buffering par défaut.
Le second paramètre de header indique juste s'il faut remplacer un précédent header de la même famille par le nouveau ou envoyer les 2.

Mammouth du PHP | 2278 Messages

21 nov. 2012, 16:40

Dans ce cas, si dans certains cas, on doit rediriger sans pouvoir changer le header, un truc dans ce genre
<script....>
function active()
{
document.getElementById('1').click()
}
</script>
<body onload='active()'>
<form id ='bidule' action ='ouonva.PHP'>
<button type ='submit' id ='1'></button>
</form>
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Eléphant du PHP | 267 Messages

21 nov. 2012, 16:45

Dans ce cas, si dans certains cas, on doit rediriger sans pouvoir changer le header, un truc dans ce genre
<script....>
function active()
{
document.getElementById('1').click()
}
</script>
<body onload='active()'>
<form id ='bidule' action ='ouonva.PHP'>
<button type ='submit' id ='1'></button>
</form>
moi pas comprendre ...

Eléphant du PHP | 187 Messages

21 nov. 2012, 17:58

oui J'ai le charset=utf-8",editeur: dreamweaver
pour le BOM,je pense ça veut dire le blanc qui se trouve entre les balises??
Si BOM il y a, il est invisible dans ton éditeur. Par contre, l'interpréteur PHP le voit, lui.

Pour être sur que ton problème ne vient pas de la, vérifie qu'il est bien désactivé. Dans propriétés de page (dans "modifier" ou quelque chose comme ça, en partant du fichier en question bien sur), sous encodage, assure-toi que la signature unicode (BOM) et décochée. S'il était coché, il est probable que ton problème venait de la.

S'il est déjà décoché, ton problème vient effectivement d'ailleurs :?
j'ai consulté propriété de la page,alors j'ai trouvé que la signature est décochée,donc c'est pas un problème de BOM!

Avatar du membre
Mammouth du PHP | 1609 Messages

21 nov. 2012, 18:15

Le problème c'est les variables de session xzena. Cherche de ce côté la.
Et je réitère ma question, pourquoi stocker le pass dans la session ?
Développeur web depuis + de 20 ans

ViPHP
ViPHP | 4039 Messages

22 nov. 2012, 15:05

j'ai consulté propriété de la page,alors j'ai trouvé que la signature est décochée,donc c'est pas un problème de BOM!
Tant mieux.. ou plutôt, tant pis, reste à trouver l'origine alors :|
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphant du PHP | 187 Messages

22 nov. 2012, 17:12

Le problème c'est les variables de session xzena. Cherche de ce côté la.
Et je réitère ma question, pourquoi stocker le pass dans la session ?
comment je peux alors résoudre ce problème s'il vous plait ?? je sais pas moi :cry:

ViPHP
ViPHP | 4039 Messages

23 nov. 2012, 12:04

Le problème c'est les variables de session xzena. Cherche de ce côté la.
Et je réitère ma question, pourquoi stocker le pass dans la session ?
comment je peux alors résoudre ce problème s'il vous plait ?? je sais pas moi :cry:
On va reprendre depuis le début.
Tu sais me remettre ta page index.php (je présume que c'est celle-la) dans l'état ou elle est actuellement ? On va y aller pas à pas.
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphant du PHP | 187 Messages

17 déc. 2012, 16:11

désolé pour ce retard,j'étais hor zone..merci pour toutes vos réponses,le problème est résolu par changer la version du navigateur..