Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
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 06/11/2007, 11h42   #1
Membre du Club
 
Inscription : septembre 2006
Messages : 184
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 184
Points : 43
Points : 43
Par défaut abération session_start <head>

Bonjour,

Une erreur se produit en ligne avec ce code pour ouvrir une session :

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
31
32
33
34
35
36
37
38
<?php session_start(); 
if(isset($_POST['login'])){
	  if ( $_POST['login'] == "LoginOk" )
		  {
			$_SESSION['login'] = "LoginOk";
			$_SESSION['pass'] = $_POST['pass'];
 
		  }
	}
 
  if ( $_SESSION['login'] != "LoginOk" )
	  { 
	  	header("location:index.php");
	  }else{  
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<title></title>
<meta http-equiv=Content-Type content=text/html charset=UTF-8/><meta name="description" content="" />
<meta name="keywords" content="" />
 
<link href="../CSS/styles_firefox.css" rel="stylesheet" type="text/css" />
 
<!--[if IE 6]>
	<link href="../CSS/styles_ie6.css" rel="stylesheet" type="text/css" />
<![endif]-->
 
<!--[if IE 7]>
	<link href="../CSS/styles_ie7.css" rel="stylesheet" type="text/css" />
<![endif]-->
 
</head>
 
<body
...
</body>
<? } ?>
J'obtiens ce message d'erreur dans firefox :

Citation:
session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
Alors qu'aucun caractère est présent entre la balise d'ouverture php et session_start(). Et qu'il n'y a rien avant

A noter que le script du <head> n'est pas lu mais que par contre le <body> l'est...

Auriez vous une piste svp?

Merci d'avance
taffMan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 11h49   #2
Membre confirmé
 
Avatar de Mogwaï
 
Inscription : mai 2004
Messages : 247
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : mai 2004
Messages : 247
Points : 243
Points : 243
Envoyer un message via MSN à Mogwaï
Utilises-tu un auto_prepend ?
__________________
Etre à son compte, y'a rien de mieux !
Mogwaï est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 12h10   #3
Membre chevronné
 
Inscription : juin 2005
Messages : 572
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Haute Vienne (Limousin)

Informations forums :
Inscription : juin 2005
Messages : 572
Points : 690
Points : 690
ce script n'est pas appelé dans une page au moyen d'un include par exemple ?
__________________
Tout pas mieux que tout le monde : évitez les questions techniques en mp sinon à quoi bon poster sur un forum ?

Petite citation : "Le sage cherche la vérité, l'imbécile l'a déjà trouvée"
ratapapa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 12h13   #4
En attente de confirmation mail
 
Inscription : novembre 2007
Messages : 3
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 3
Points : 3
Points : 3
Envoyer un message via MSN à lisendra
Tu ne serais pas chez Free.fr?

Si oui, creer un repertoire qui se nomme "sessions" a la racine de ton site.
Je pense que cela devrait regler ton probleme, moi ca m'a aider.
lisendra est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 14h22   #5
Membre du Club
 
Inscription : septembre 2006
Messages : 184
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 184
Points : 43
Points : 43
Merci pour vos réponses.

Citation:
Utilises-tu un auto_prepend
Non qual es?

Citation:
ce script n'est pas appelé dans une page au moyen d'un include par exemple ?
Du tout pas d'include

Sinon je ne suis pas chez free mais 1and1
taffMan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 14h38   #6
Membre éclairé
 
Avatar de Linio
 
Inscription : octobre 2005
Messages : 427
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 427
Points : 304
Points : 304
Allez ma préférée:

Tes pages sont elles encodées en UTF-8?
Si oui si tu n'as pas enlevé la BOM voilà ton pb.
__________________
Linio
Linio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 15h10   #7
Membre du Club
 
Inscription : septembre 2006
Messages : 184
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 184
Points : 43
Points : 43
Salut Linio,

Mes pages sont en effet encodées en UTF8, mais pour ce faire je suis passé par le bloc note. J'ai dû encoder ainsi pour me débarasser de ces caractères bizarres qui remplaçaient les é è à, etc.... J'ai aussi encodé de la sorte les pages php appellées par ajax...

What is the BOM?
taffMan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 15h18   #8
Membre Expert
 
Avatar de Seb33300
 
Homme Sébastien Alfaiate
Développeur Web
Inscription : janvier 2007
Messages : 1 330
Détails du profil
Informations personnelles :
Nom : Homme Sébastien Alfaiate
Âge : 26
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : janvier 2007
Messages : 1 330
Points : 1 659
Points : 1 659
Avec le bloc note je sais pas mais avec Notepad++ :
Format > Encoder en UTF-8 sans BOM
Seb33300 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/11/2007, 15h18   #9
Membre éclairé
 
Avatar de Linio
 
Inscription : octobre 2005
Messages : 427
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 427
Points : 304
Points : 304
It's the thing that make your pages planting

C'est un petit entête rajouté dans les pages encodées en UTF-8 qui servait si mes souvenirs sont bon à préciser l'encodage.

Typiquement des éditeurs permettent de le virer (totalement inutiles dans la mesure où l'encodage est précisé dans l'entête des pages par tes soins en théorie), du style notepad++.

Je mets pas ma main à couper dessus, mais il y a de très très fortes chances que ton pb vienne de là.
__________________
Linio
Linio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 11h05   #10
Membre du Club
 
Inscription : septembre 2006
Messages : 184
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 184
Points : 43
Points : 43
Concrêtement tu me conseilles de faire quoi Linio?
taffMan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 11h19   #11
Membre éclairé
 
Avatar de Linio
 
Inscription : octobre 2005
Messages : 427
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 427
Points : 304
Points : 304
Le plus simple pour éviter de réencoder totalement des pages dans un autre encodage est de faire un encodage UTF-8 sans BOM.

L'Ansi va te poser des soucis si tu as un codage utf-8 déjà existant (par exemple sur ta BDD).

Personnellement j'encode mes pages pour mon projet et j'utiliser notepad++ pour se faire, option UTF-8 sans BOM, donc je sais pas si Dreamweaver le fait, on sort de mon cadre de compétence, mais à priori oui (tout bon éditeur qui se respecte devrait le faire).

Je pense que ces petits soucis seront réglés avec PHP6 (j'espère), en attendant on bidouille un peu...
__________________
Linio
Linio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/11/2007, 11h49   #12
Membre du Club
 
Inscription : septembre 2006
Messages : 184
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 184
Points : 43
Points : 43
Merci beaucoup
taffMan 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 12h07.


 
 
 
 
Partenaires

Hébergement Web