Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/12/2006, 13h21   #1
Candidat au titre de Membre du Club
 
Inscription : mars 2004
Messages : 32
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : mars 2004
Messages : 32
Points : 10
Points : 10
Par défaut Session dans un développement type MVC

Salut à tous, j'essaie de mettre un place un site développé sous la méthode MVC (Modele Vues Contrôleur).

Ceci dit, des le debut je me heurte a un problème important: mes sessions ne sont pas fonctionnelles.

Arborescence du site :
www
|_modeles
|_vues
...|_index
......|_index.php
......|_erreur.php
|_contrôles
...|_index
......|_afficher.php

Dans cette méthode, le visiteur appel le fichier afficher.php qui s'occupe de toutes les vérifications usuelles et suivant le résultat des ces dernières, inclue le fichier adéquat (index.php si pas d'erreur, sinon erreur.php) qui contient le corps html de la page.

Dans les fichiers de contrôle, on ouvre les sessions (session_start()). Or, si je fait appel aux variables de session dans index.php (qui est inclus dans afficher.php) je ne retrouve pas les valeurs précédemment stockées.

Avez-vous l'explication de ce phenomene ?
Merci à tous !
Maxbenji est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2006, 23h06   #2
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
tu inclus bien les fichiers en utilisant "include" ou "require" ? (ou bien avec "_once" ça fonctionne de la même façon)
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2006, 09h48   #3
Candidat au titre de Membre du Club
 
Inscription : mars 2004
Messages : 32
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : mars 2004
Messages : 32
Points : 10
Points : 10
Oui j'utilise include. Bon je précise que j'héberge chez Online mais que le soucis est le même en local.

Apres quelques tests, j'ai l'impression que les sessions ne veulent pas travailler dans une arborescence plus haute que celle ou elles ont été initialisé.
Maxbenji est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2006, 16h25   #4
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
Citation:
Envoyé par Maxbenji
Oui j'utilise include. Bon je précise que j'héberge chez Online mais que le soucis est le même en local.

Apres quelques tests, j'ai l'impression que les sessions ne veulent pas travailler dans une arborescence plus haute que celle ou elles ont été initialisé.
si "index.php" est inclus dans la page "afficher.php" il ne devrait pas y avoir de problème puisque c'est le même niveau
mais en effet si tu as une différence de niveau il faut utiliser la fonction http://php.net/session_set_cookie_params avant chaque appel à "session_start" comme ça tu peux indiquer le chemin de validité de la session
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2006, 22h58   #5
Candidat au titre de Membre du Club
 
Inscription : mars 2004
Messages : 32
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : mars 2004
Messages : 32
Points : 10
Points : 10
Merci pour ta réponse.

Bon j'ai fait pas mal de test et effectivement les sessions passent à présent, hors j'ai l'impression qu'il m'est impossible depuis "afficher.php" de faire un include de "index.php", car il n'est pas dans un dossier fils.

A trop vouloir optimiser j'en vois plus le bout.

Edit :
Bon le problème venait du fait que mes inclusion étaient fais avec l'url et non pas le chemin physique des fichiers sur le serveur.
Maxbenji est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/12/2006, 18h38   #6
Candidat au titre de Membre du Club
 
Inscription : mars 2004
Messages : 32
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : mars 2004
Messages : 32
Points : 10
Points : 10
Bon le problème se résout avec les chemins physiques des fichiers sur le serveur et non pas en passant par les url.

Merci pour votre aide.
Maxbenji est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h02.


 
 
 
 
Partenaires

Hébergement Web