Sssions chez free, gros problème
Nirahiel
-
Nirahiel -
Nirahiel -
Bonjour,
j'ai un site sur free, et je suis en train de faire des tests, seulement ...
Il semblerai que du code soit envoyé AVANT le session_start, mais toutes mes pages commencent par :
<?php
require("includes/start.php");
?>
[...]
et dans start.php
<?php
session_start();
?>
[...]
et ca ne marche pas :(
Help !! Merci d'avance.
j'ai un site sur free, et je suis en train de faire des tests, seulement ...
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/140/sdb/b/9/nirahiel/test/includes/start.php:1) in /mnt/140/sdb/b/9/nirahiel/test/includes/start.php on line 2 
Il semblerai que du code soit envoyé AVANT le session_start, mais toutes mes pages commencent par :
<?php
require("includes/start.php");
?>
[...]
et dans start.php
<?php
session_start();
?>
[...]
et ca ne marche pas :(
Help !! Merci d'avance.
Configuration: Windows XP Firefox 3.0.3
8 réponses
-
Ah il semblerai que Free n'aime pas les session_start dans des includes, j'ai mis sssion_start directement dans chaque page, avant le 1er include et ca fonctionne, bizarre !!
-
-
Bonjour
Le session_start est tout à fait possible dans un include chez free, il y en a dans mon site.
D'après le message d'erreur, tu sors quelque chose dès la première ligne de start.php. Peux-tu regarder le début de ton fichier evec un éditeur hexadécimal pour être vraiment sûr de ce qu'il contient ? -
L'éditeur hexa, c'est pour voir s'il y a des caractères que les éditeurs de texte n'affichent pas.
Peux-tu copier-coller les deux ou trois premières lignes de ton start.php ?-
Voila l'index.php :
<?php require("includes/start.php"); ?> <!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"> <head>[...]
et le start.php
<?php session_start(); //connexion a la base de données if($_SERVER['REMOTE_ADDR']!="127.0.0.1") { $server = "sql.free.fr"; $user = "nirahiel"; $pass = "***********"; //caché :) $database = "nirahiel"; } else { $server = "localhost"; $user = "root"; $pass = ""; $database = "nxunlimited"; } mysql_connect($server,$user,$pass) or die(mysql_error()); mysql_select_db($database) or die(mysql_error()); //maintenant on includes les fonctions include("includes/regieclic.php"); include("includes/misc.php"); include("includes/member.php"); if(isset($_SESSION['member'])) { $member = unserialize($_SESSION['member']); } else { $member = new member(); } ?>- Apparament voici ce que ca donne en HEX (les premières lignes)
3c 3f 70 68 70 0d 0a 73 65 73 73 69 6f 6e 5f 73 74 61 72 74 28 29 3b 0d 0a 2f 2f 63 6f 6e 6e 65 78 69 6f 6e 20 61 a0 20 6c 61 20 62 61 73 65 20 64 65 20 64 6f 6e 6e e9 65 73 0d 0a 69 66 28 24 5f 53 45 52 56 45 52 5b 27 52 45 4d 4f 54 45 5f 41 44 44 52 27 5d 21 3d 22 31 32 37 2e 30 2e 30 2e 31 22 29
Ici on vois bien que le 3c 3f 70 68 70 correspond à <?php
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
ça a effectivement l'ai correct. As-tu vérifié aussi le début de ton index.php?
Question idiote : n'aurais-tu pas un autre include ou require start.php ? Peut-être caché dans un autre include ? Je sais, ça marchait avec Wamp, mais quand on ne trouve pas, il faut bien remettre en cause ce qu'on croyait sûr...
Tu as dit aux messages 2-3 que tu avais aussi le problème en mettant ton session_start directement dans chaque page, peux-tu recopier le message d'erreur que tu as dans ce cas, par exemple sur index.php ? -
Je pense qu'il est déjà créé, sinon il y aurait un premier message d'erreur :
Warning: session_start() [function.session-start]: open(/mnt/.../sessions/sess_3e7050b60d8f398aa238150afc7325d9, O_RDWR) failed: No such file or directory (2) in /mnt/148/sda/2/b/xxxx/index.php on line 2
(je viens de faire l'essai) -
Wow, c'est vraiment étrange, je ferme le navigateur, je le réouvre, et l'erreur à disparue :o
Vraiment bizarre -
Bonjour
essaies de créer un dossier "sessions" dans la racine (root) de ton site free.