sessions & cookies, recuperation info - PHP - Programmation
Marsh Posté le 16-06-2005 à 08:37:39
simogeo a écrit : ca veut dire que ton test est foireux |
le test ligne 1 du premier code ?
ben non puisque j'arrive à lire les infos de session apres, tant que le cookie existe.
apres la destruction du cookie, j'ai vraiment l'impression que la session n'existe plus puisque $_SESSION['present'] == 'on' me retourne false.
J'ai fait différents tests mais toujours le même résultat...
Marsh Posté le 16-06-2005 à 11:07:01
ben deja, mettre le session_start dans le if, c'est pas malin ...
Marsh Posté le 16-06-2005 à 11:43:44
pourquoi ?
ah vi mais en fait il faut que j'explique que cette page se charge a chaque page (la page apparait via un include) donc je suis obligé de mettre un if sinon ca crééra une session a chaque fois. Et puis si je le met dans une autre page, eh bien ca sera apres les headers
Marsh Posté le 16-06-2005 à 11:56:06
session_start ne crée de nouvelle session que s'il n'y en a pas, sinon il continue la meme.
...
Marsh Posté le 16-06-2005 à 11:56:08
mais non ..... sors le!
et lis a ce sujet sur les sessions
Marsh Posté le 16-06-2005 à 11:59:35
vi mais la est mon pb
je ne voulais de session que si j avais un cookie afin de mixer cette histoire de cookie long et court
Marsh Posté le 16-06-2005 à 12:01:41
tu fais un session_start, mais tu n'initialise les variables de session que si le cookie est présent. C'est pas compliqué ...
Marsh Posté le 17-06-2005 à 02:10:00
bien merci ca marche parfaitement
j'aurais une autre question.
J'ai lu pas mal de tuto sur comment dénombrer les utilisateurs présents sur le site. Tout ceux que j'ai vu utilisent l'adresse IP et requierent pas mal de code.
Je me demandais si il y avait un moyen de faire ca en se basant sur le nombre de sessions ouvertes...
Marsh Posté le 17-06-2005 à 16:54:36
Ce que tu veux, c'est savoir qui est connecté ??
Pour mon intranet, j'ai fait comme ça :
Code :
|
Marsh Posté le 17-06-2005 à 16:56:57
Et après, tu interroge la table correspondante pour savoir le nombre de connecté(s), qui est connecté, etc.
Marsh Posté le 17-06-2005 à 17:03:19
Par contre, une chose ! J'allais oublié lol. Si la personne est connectée mais qu'elle ne fait rien depuis plus de 5 minutes, son statut passera en mode non connecté, par contre si elle redevient active, ça repasse en connecté. J'ai pas voulu détruire la session pour ça .
Marsh Posté le 16-06-2005 à 01:09:53
Salut,
J'ai fait un forum avec méthode d'identification qui propose deux choix :
Identification longue ==> cookie qui dure environ trois mois
Identification courte ==> banal cookie qui dure 30 min (estimation de la durée d'un passage sur mon site)
Maintenant que ceci est fait, je me suis intéressé au session et apparement c'est pas bien compliqué.
Seulement, j'aimerais pouvoir gérer le cookie longue vie et le cookie courte vie en un seul afin de ne pas avoir de test dans chacun des formulaires pour savoir qui du cookie ou de la session est present.
Je pensais faire un truc du genre :
code qui n'est censé s'executer qu apres identification (cookie courte vie) ou arrivée sur la page (cookie longue vie) et pi apres vivre sa vie.
mais pour une raison que je ne comprend pas ca ne fonctionne pas ...
les info disparaissent isset($_SESSION[('nickpseudo')]) me retourne FALSE des que le cookie n'existe plus.
Qqun sait il prkoi ? Ou a t il une meilleure idée ?
[edit]
bon j'ai encore cherché sur pas mal de sites, fait des tests et rien ..., les infos de session disparaissent dès que le cookie n'existe plus.
J'ai modifié le code
mais apres 10s (la durée de vie du cookie pour les tests )
me retourne false ...
Message édité par Profil supprimé le 16-06-2005 à 02:59:53