Pb de Warning: session_start

Bonjour,

Voila j’ai quelques soucis avec mon site web.
J’ai donc un site a cette adresse : www.bkdaoc.com et je souhaite pouvoir travailler dessus en local tranquillement. Je me suis donc installer sur un pc la Mandrake 10 avec l’ensemble des package apache/mysql, j’ai bien configurer en serveur , etc…

Je transfert mon site dans le repertoire de web public et j’essaye d’y acceder depuis mon reseau local par internet explorer (http://adresseipduserveur/repertoiredusite). J’usque la pas de prob, je retrouve bien mon site, mes bases de données sont la.

Par contre probleme :x direct a la page d’accueil de mon site j’ai plusieurs messages d’erreur :

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /var/www/html/bkdaoc/index.php:6) in /var/www/html/bkdaoc/nuked.php on line 20

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /var/www/html/bkdaoc/index.php:6) in /var/www/html/bkdaoc/nuked.php on line 20

voila , et y’en a d’autres. Par contre si je vais consulter mon site sur internet comme a l’habitude y’a pas de prob, aucun messages d’erreur.

Donc mes questions sont :

J’aurais pas oublier un truc dans la configuration de php/mysql ? ou autre ? sur mon serveur Mandrake…

Pourquoi ca marche bien chez mon hebergeur web et pas sur le serveur mandrake que j’ai installer ?

J’ai deja regardé pas mal de forum et ils ont dis de verifier si il n’y avais pas d’html (ou autre) avant la commande session_start. Voici le debut de mon code :
[cpp]

<?PHP nk_globals('HTTP_GET_VARS'); nk_globals('HTTP_POST_VARS'); nk_globals('HTTP_COOKIE_VARS'); nk_globals('HTTP_SERVER_VARS'); $id_de_session=$HTTP_COOKIE_VARS['sess_id']; include ("conf.inc.php"); connect(); include ("Includes/nkSessions.php"); include ("Includes/XForum.php"); if (!$id_de_session) { session_start(); $id_de_session=session_id(); setcookie("sess_id","$id_de_session",time()+(9999999 * 30),"","", ""); } else { session_id($id_de_session); session_start(); } [/cpp] donc rien d'anormal et pourtant les erreurs sont la :x Que faire ?

www.php.net/session-start

erreur courante, session_start() (tout comme setcookie()) doit etre envoyé avant totu envoie de donnée au navigateur du client.
tu peux vérifier en utilisant la fonction headers_sent()

a+

PS: la pub n’était peut-etre pas necessaire …

comme tu dis la pub n’est pas nécessaire (d’ailleur je vois pas la pub que je fais avec un site de guilde d’un jeu…), mais par contre lire un post avant de repondre ca parais justifier , ce que tu n’a pas fais… J’ai dis que j’avais vérifier ce que tu viens de me dire


J’ai deja regardé pas mal de forum et ils ont dis de verifier si il n’y avais pas d’html (ou autre) avant la commande session_start.

alors avant de critiquer lis correctement … merci

Donne plus de code et utilise les balises [ cpp ] et [/ cpp ] Pour que ton code soit plus lisible sur le Forum

où ça je t’ai critiqué ? Je cherche à t’aider c’est tout; désolé si j’avais sauté la dernière phrase. Mais bon …
T’as peut etre un “warning” ou quoi plus haut dans ton code, non ? un espace en trop ? etc … essaye avec headers_sent voir tant qu’à faire.

bah en fait ce qui me posé probleme surtout c’est que sur le serveur de mon hebergeur ca fonctionne mais que sur mon serveur perso ca ne fonctionner pas.

Mais j’ai trouvé la solution et en fait ca venait bien de la configuration du php.ini. J’ai mis :

  • Session start en automatique (1)
  • Output_buffering sur On

et hop plus de prob :slight_smile:

et bien recherche si tu fais un echo juste avant les commandes de sessions. en plus on te dit la ligne. il est gentil ton php.

ne pas lire le post en entier avant de repondre c’est mal :slight_smile: