2010-11-10 3 views
0

Je ne peux pas commencer session à l'aide session_start() ... Je reçois cette erreur:session PHP Problème

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /**************/index.php:5) in /**************/session.php on line 2 

c'est le contenu de mon fichier de session.php:

<?php 
session_start(); 

if(((!isset($_SESSION['user']))) || (!isset($_SESSION['valid'])) || ($_SESSION['valid'] != -1 && $_SESSION['valid'] != 0 && $_SESSION['valid'] != 1)) 
$_SESSION['valid'] = 0; 

function destroy_session() 
{ 
    session_destroy(); 
} 
?> 

Et je dois résoudre ce urgent !!

+0

Etes-vous absolument sûr qu'il n'y a pas d'espace avant le '

+0

http://stackoverflow.com/questions/1183726/headers-already-sent-in-php – Phil

+0

Ce fichier est-il inclus dans un autre fichier? – lonesomeday

Répondre

2

Le message d'erreur vous indique où la sortie a été lancé

output started at /**************/index.php:5 

Soit appeler session_start() avant que la sortie a lieu (de préférence) ou utiliser en mémoire tampon de sortie (moins préférable)

Edit: Si vous n'êtes pas conscient de la raison derrière cette erreur, lisez le PHP header()manual page

Remember that header() must be called before any actual output is sent, either by normal HTML tags, blank lines in a file, or from PHP. It is a very common error to read code with include(), or require(), functions, or another file access function, and have spaces or empty lines that are output before header() is called. The same problem exists when using a single PHP/HTML file.

1

on dirait que vous devez inclure ce fichier plus tôt dans votre code. Principalement, avant tout HTML ou contenu est sorti.