|
|
|
|
Exusez moi,
Une erreur s'est glissée dans ce que j'ai posté. J'ai marqué dans mon post "Ma page d'accueil, index.php commence par : <?php session_start() ?> Donc un cookie est envoyé et dans..." Evidemment, aucun cookie n'est envoyé, j'utilise des sessions qui sont enregistrés sur un répertoire [tmp] du serveur. ThanX |
Salut,
Si j'ai bien suivi tout est normal. Apache ne peut pas deviner que c'est la même personne qui navigue et que cette personne veut la même session sur toutes ses pages. Il faut donc récupérer l'ID de session dans une variable et la passer en paramètre à ta page (par GET ou POST selon les traitements). Ensuite à l'ouverture, il faut récupérer cette valeur et indiquer à PHP que tu veux ouvrir CETTE session, et non en re-créer une. Le mieux étant de regarder la doc PHP au sujet des sessions. Le début de ta page va ressembler à ça : if (isset($_GET['session'])) //si l'ID de session est passé en paramètre GET session_id($_GET['session']) ; //on l'attribue à la session (reprise de session) session_start() ; //on démarre (ou reprend, selon la condition précédente) la session $session = session_id() ; //récupération de l'ID de session dans une variable $session Bon ça c'est bien quand les pages se suivent mais quand tu en ouvres une nouvelle vierge et que tu vas ensuite sur le site ben ça marche pas. Passe alors par des cookies, le fonctionnement est similaire et bien expliqué dans la doc. J'espère avoir tapé juste.
|
Bonjour à tous,
Tout d'abord, je remercie Delta pour sa participation. J'ai effectué des tests avec des collègues sur des environnements wan & lan, on arrive aux conclusions suivantes : 1- Il ne faut pas démarrer de session dans la page index.php ou toute autre page si elle comporte un formulaire d'authentification qui renvoie vers un script vérifiant login et mot de passe. Cette page en question ne doit pas contenir de session_start(). Sinon attendez vous, un jour ou l'autre, à un problème de navigation ou à une faille dans la sécurité de votre site. 2- Le formulaire en question, doit renvoyer vers "actinon = http://adresseip/nom de la page traitant les données" et non pas vers "action : nom de la page traitant le script" 3- Dans les différentes pages de votre site, si vous utilisez des renvois (header Location:http://...) utilisez TOUT le temps l'adresse IP de votre machine et non l'adresse nom. 2 comportements à expliquer: 1- si un visiteur qui s'est déjà authentifié, ouvre une nouvelle fenêtre(tout en gardant la première ouverte), il pourra ouvrir une session différente avec le même nom d'utilisateur ou un nom d'utilisateur différent. 2- si un visiteur qui s'est déjà authentifié, utilise la même fenêtre pour revenir à la page d'accueil et ouvrir une nouvelle session : C'est la session en cours qui sera modifiée : Ainsi il pourra se reconnecter avec le même nom d'utilisateur ou un nom d'utilisateur différent sans pour autant ouvrir une nouvelle session. Si vous avez besoin de plus amples explications, faites moi signe. Walid G. |
Walid G.
Je te remercie serieusement car moi je pétait les plombs en me cassant la tete sur ce probleme que je rencontre depuis une semaine. MERCI MERCI MERCI MERCI Configuration: Windows XP Internet Explorer 7.0 |
| 31/07 23h21 | [PHP] Headers already sent by..... | PHP |
| 17/04 20h50 | Page, doc et tutoriaux officiels | PHP |
| 20/04 18h59 | [PHP] Fonction mail() | PHP |
| 21/04 11h38 | Liens utiles | PHP |
| 21/04 12h07 | Connexion à une base Oracle en php | Oracle |
| 17/03 20h42 | [php] session + Affichage du nom | 2 |
| 13/03 10h25 | [PHP] Sessions PHP sur free | 9 |
| 01/12 00h13 | Php session cookie qui ne se supprime pas | 1 |
| 20/04 11h23 | [php] session utilisateur sur un site | 16 |
![]() | PHP Edit - PHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de... | Catégorie: PHP Licence: Freeware/gratuit |
![]() | MSN Polygamy - Msn/Windows Live Messenger Polygamy permet d'ouvrir plusieurs instances (copies) de Windows Live Messenger avec... | Catégorie: Messagerie instantanée Licence: Freeware/gratuit |
![]() | WAMP Server - WAMP5 (WAMP signifiant Windows Apache Mysql PHP) est une plateforme de développement Web sous Windows. Il vous permet de... | Catégorie: Serveurs Licence: Freeware/gratuit |
![]() | easyPHP - EasyPHP est un environnement de travail packagé comprenant le serveur web Apache, le système de gestion de bases de données... | Catégorie: Serveurs Licence: Open Source |
![]() | Jam Sessions | Catégorie: Jeu vidéo Nintendo DS | 18.99 € Amazon.fr |
![]() | Grind Session | Catégorie: Jeu Playstation |