l'erreur “Cannot modify header information”quel est sa cause ?
-On tente de modifier des entêtes de documents alors que des informations ont déjà été envoyées au client.
mais j'ai pas toujours compris
pouvez expliquez d'avantage ?
merci
Version imprimable
l'erreur “Cannot modify header information”quel est sa cause ?
-On tente de modifier des entêtes de documents alors que des informations ont déjà été envoyées au client.
mais j'ai pas toujours compris
pouvez expliquez d'avantage ?
merci
Bonjour,
Houps je réponds a ta question, c' est toujours lorsqu'il y a déjas même un petit espace avant le
Je réédites pour ajouter que la page HTML crée un HEADER dés qu'il y a un ligne ou un espaceCode:<?PHP xxxxxxxxxxx
géneralement c'est quand tu fait usage de la fonction header après avoir fait des echo. Est ce le cas pour toi ?Citation:
Envoyé par Jcpan
exactement
Mais mémé si je l'ai supprimé j'ai le même cas 8O et pas d'espace dans le code PhP j'ai juste ajouter ce ci dans mon fichier de connexion
Code:
1
2
3
4 session_start(); $_SESSION["id"]; $_SESSION["nom"];
Citation:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\workspace\fphp\src\Login.php:2) in C:\workspace\fphp\src\Connect.php on line 3
Oui je crois comprendre, tu ne montre pas ton PHP ce qui nous empéche de t'aider, tu as compris que toutes ces actions doivent se faire une seule fois, et en tête du fichier bien collé au bord
Mais j'ais bien dit en tête, si tu fais des includes ou autres tu est en plein milieu du PHP ....Code:<?PHP etc ...
Le PHP résultant est le PHP ou tout est écrit dedans, même les includes
Ors dans le PHP tu ne peux ouvrir deux fois de session !8O
unité session qui fait appel à l'unité test3.php
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <form name="form1" method="post" action=""> <label>ID <input type="text" name="ID" id="ID"> </label> <label>Nom <input type="text" name="Nom" id="Nom"> </label> <label> <input type="submit" name="Valider" id="Valider" value="Valider"> </label> </form> <?php if( (isset($_POST['ID'])) && (isset($_POST['Nom'])) ){ if( ( $_POST['ID'] == "1" ) && ($_POST['Nom']== "1") ) { session_start(); $_SESSION["id"] = $_POST['ID']; $_SESSION["nom"] = $_POST['nom'] ; echo "dd"; header("test3.php"); } } ?>
unité test3.php
erreurCode:
1
2
3
4
5
6 <?php include("session.php"); echo "<p>ID : $_SESSION[id]</p>"; echo "<p>NOM : $_SESSION[nom]</p>"; ?>
voila :(Citation:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\workspace\fphp\src\Session.php:15) in C:\workspace\fphp\src\Session.php on line 20
dd
Warning: Cannot modify header information - headers already sent by (output started at C:\workspace\fphp\src\Session.php:15) in C:\workspace\fphp\src\Session.php on line 24
Salut
Tu affiche bel et bien quelque chose avant ton header
Afficher de l'HTML c'est comme si tu fesait un "echo xxxxx;"Code:
1
2
3
4
5
6
7
8
9
10
11 <form name="form1" method="post" action=""> <label>ID <input type="text" name="ID" id="ID"> </label> <label>Nom <input type="text" name="Nom" id="Nom"> </label> <label> <input type="submit" name="Valider" id="Valider" value="Valider"> </label> </form>
Il faut mettre ton code PHP en premier.
même chose
erreurCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 <?php if( (isset($_POST['ID'])) && (isset($_POST['Nom'])) ){ if( ( $_POST['ID'] == "1" ) && ($_POST['Nom']== "1") ) { session_start(); $_SESSION["id"] = $_POST['ID']; $_SESSION["nom"] = $_POST['nom'] ; echo "dd"; header("test3.php"); } } ?> <form name="form1" method="post" action=""> <label>ID <input type="text" name="ID" id="ID"> </label> <label>Nom <input type="text" name="Nom" id="Nom"> </label> <label> <input type="submit" name="Valider" id="Valider" value="Valider"> </label> </form>
Citation:
Warning: Cannot modify header information - headers already sent by (output started at C:\workspace\fphp\src\Session.php:8) in C:\workspace\fphp\src\Session.php on line 9
Le echo "dd"; est il voulu ? ;)
:lun::resolu: