Gibou Posté 22 Octobre 2007 Posté 22 Octobre 2007 (modifié) Bonjour, Je sais, avant même de cliquer sur ce topic, vous vous êtes dits "encore un qui ne sait pas qu'il ne faut pas faire d'envoi type echo, print ou laisser un espace ou une ligne blanche avant le session_start() Que nenni ! Voici mon code de la page index.php: <?php session_start();session_regenerate_id();ob_start(); // enclanchement de la tamporisation de sortie (mise en cache)require_once("api/main.php");$main = new Main();ob_end_clean(); // libération de la mémoire tampon?>... bla bla bla html + php Et voici les messages d'erreurs (oui en plus, j'ai la chance d'en avoir plusieurs ) Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Common\sources\Sites\wedus\newsite\index.php:1) in C:\Common\sources\Sites\wedus\newsite\index.php on line 1Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Common\sources\Sites\wedus\newsite\index.php:1) in C:\Common\sources\Sites\wedus\newsite\index.php on line 1Warning: session_regenerate_id() [function.session-regenerate-id]: Cannot regenerate session id - headers already sent in C:\Common\sources\Sites\wedus\newsite\index.php on line 2 Alors, pour préciser, le serveur est une solution wamp (WAMP5 version 1.7.3 soit, la dernière sortie. J'avais le même problème avec la 1.7.2 et j'espérais que ce problème allait se résoudre en passant à la nouvelle version mais non). Je travaille en local comme l'indiquent les chemins absolus. le session_regenerate_id() est là pour éviter les url du type index.php?PHPSESSID=blabloubli le ob_start() et ob_end_clean() sont là car parmis les classes de mon API, il y a des espaces et certains headers foiraient lors de leurs appels. Ce qui est "amusant" c'est que j'ai développé une API php cet été sans ce système de cache avec autant d'headers dans l'api et je n'ai eu aucun problème jusqu'à hier soir ... groumf. Merci de m'éclairer de vos lumières. Cordialement, Modifié 22 Octobre 2007 par Gibou
captain_torche Posté 22 Octobre 2007 Posté 22 Octobre 2007 Quel encodage utilises-tu pour créer tes pages ? Ca peut éventuellement venir de là. Sinon, as-tu le même souci sur une page vierge ? (Juste le session_start ?) Et sinon, oui, avant de cliquer, je me suis dit ce que tu penses
Gibou Posté 22 Octobre 2007 Auteur Posté 22 Octobre 2007 J'utilise notepad++ avec une page encodée en utf-8 Oui, j'ai le même souci avec la page blanche :s
Gibou Posté 22 Octobre 2007 Auteur Posté 22 Octobre 2007 C'est bon, Je viens de visualiser le code avec l'éditeur hexadécimal de notepad++ et il y avait trois caractères malsains cachés en début de code. Groumf Bonne soirée
ricotrutt Posté 22 Octobre 2007 Posté 22 Octobre 2007 Astuce pour éviter ça avec notepad ++ : passer en utf-8 sans BOM
Seiun Posté 1 Novembre 2007 Posté 1 Novembre 2007 En plus de la suppression des caractères inutiles, il a fallu que j'active l'"output buffering" dans la configuration PHP de wamp. J'avais le même problème maintenant ca fonctionne correctement (en tout cas plus de warning). Bonne chance
petit-ourson Posté 1 Novembre 2007 Posté 1 Novembre 2007 En plus de la suppression des caractères inutiles, il a fallu que j'active l'"output buffering" dans la configuration PHP de wamp. J'avais le même problème maintenant ca fonctionne correctement (en tout cas plus de warning). Bonne chance Et cela n'a aucune conséquence au niveau des performance ??
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant