SESSION PHP session_set_save_handler
5 messages
• Page 1 sur 1
- Fredouille
- Nouveau WRInaute

- Messages: 7
- Inscription: 5 Oct 2007
SESSION PHP session_set_save_handler
Bonjour,
Voici ce qui m'arrive : après identification de mon login, je clique sur une rubrique de mon espace sécurisé et je retourne systématiquement sur ma page de login !
J'utilise la fonction session_set_save_handler() pour stocker mes sessions en fichier sur mon serveur (1et1) et le phénomène suivant se produit :
1/ Je me connecte sur ma page d'identification : création d'un fichier session vide
2/ login reconnu : un nouveau fichier est créé avec les données sessions
3/ je clique sur ma rubrique : un nouveau fichier vide est créé !
Ce n'est pas normal puisque c'est le fichier créé en 1/ qui devrait être mis à jour. Cela fonctionne bien sur EasyPHP.
Voici ma fonction de lecture de session :
function read($id) {
$contenu = '';
if(file_exists(REPERTOIRE . "$id")) {
$contenu = file_get_contents(REPERTOIRE . "$id");
}
return $contenu;
}
autre version :
function read($id) {
if($fp = fopen(REPERTOIRE . "$id", 'r')) {
$contenu = fread($fp, filesize(REPERTOIRE . "$id"));
fclose($fp);
return $contenu;
}
return '';
}
(REPERTOIRE est correctement initialisé)
Il se trouve que sur 1et1, même si mon fichier existe, il n'est pas lu ($contenu est toujours vide). A noter que EasyPHP sur mon ordi et 1et1 ont la même configuration au niveau des sessions.
A part le fait que 1et1 soit en rade, avez-vous une idée de l'origine du problème ?
Merci pour votre réponse.
Voici ce qui m'arrive : après identification de mon login, je clique sur une rubrique de mon espace sécurisé et je retourne systématiquement sur ma page de login !
J'utilise la fonction session_set_save_handler() pour stocker mes sessions en fichier sur mon serveur (1et1) et le phénomène suivant se produit :
1/ Je me connecte sur ma page d'identification : création d'un fichier session vide
2/ login reconnu : un nouveau fichier est créé avec les données sessions
3/ je clique sur ma rubrique : un nouveau fichier vide est créé !
Ce n'est pas normal puisque c'est le fichier créé en 1/ qui devrait être mis à jour. Cela fonctionne bien sur EasyPHP.
Voici ma fonction de lecture de session :
function read($id) {
$contenu = '';
if(file_exists(REPERTOIRE . "$id")) {
$contenu = file_get_contents(REPERTOIRE . "$id");
}
return $contenu;
}
autre version :
function read($id) {
if($fp = fopen(REPERTOIRE . "$id", 'r')) {
$contenu = fread($fp, filesize(REPERTOIRE . "$id"));
fclose($fp);
return $contenu;
}
return '';
}
(REPERTOIRE est correctement initialisé)
Il se trouve que sur 1et1, même si mon fichier existe, il n'est pas lu ($contenu est toujours vide). A noter que EasyPHP sur mon ordi et 1et1 ont la même configuration au niveau des sessions.
A part le fait que 1et1 soit en rade, avez-vous une idée de l'origine du problème ?
Merci pour votre réponse.
- Fredouille
- Nouveau WRInaute

- Messages: 7
- Inscription: 5 Oct 2007
Oui sûr et certain : j'ai vérifié mon dossier session à chaque étape via mon logiciel FTP.
J'ajoute que le même phénomène se produit avec une table session dans ma base de données. Ne parlons pas des cookies... Mon navigateur, que ce soit IE ou Firefox, accepte bien les cookies... ?
J'ajoute que le même phénomène se produit avec une table session dans ma base de données. Ne parlons pas des cookies... Mon navigateur, que ce soit IE ou Firefox, accepte bien les cookies... ?
- Fredouille
- Nouveau WRInaute

- Messages: 7
- Inscription: 5 Oct 2007
Bon ben finalement, c'était l'hébergeur qui a foiré. Mes deux exemples de lecture fichier + le mode de lecture en SQL fonctionne sans que je n'ai rien modifié de particulier !
La distinction fichier inexistant / fichier vide pourrait me servir dans d'autres cas.
Merci pour ton aide.
La distinction fichier inexistant / fichier vide pourrait me servir dans d'autres cas.
Merci pour ton aide.
5 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


