bonjour,
j'ai quelque données et je souhaite les faire partager entre des sessions et tout en arrivant à distinger mes sessions à partir d'autre sessions.
est ce possible de faire pareil ? si oui comment devrai-je procéder ?
merci d'avance
bonjour,
j'ai quelque données et je souhaite les faire partager entre des sessions et tout en arrivant à distinger mes sessions à partir d'autre sessions.
est ce possible de faire pareil ? si oui comment devrai-je procéder ?
merci d'avance
Bonjour
Qui dit "partage" dit inévitablement "variables de sessions communes".
A préciser aussi que tu ne peux pas distinguer une session par rapport à une autre ( Mauvaise piste ), mais il y a bien plus simple si tu sais maîtriser les sessions PHP.
En revanche, tu peux distinguer des variables de sessions personnelles, et celles qui sont communes à tous.
En pratique, c'est trés simple quand on s'y interresse.
Je m'explique :
Lorsque tu inities ta session de base et par exemple :
Dans les commentaires, tu observeras que certaines variables sont propres à l'utilisateur (privée), et que d'autres sont communes à l'ensemble des utilisateurs (commune).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $_SESSION['truc'] = $truc; // Variable privée $_SESSION['machin'] = $machin; // Variable privée $_SESSION['bidule'] = $bidule; // Variable commune $_SESSION['chose'] = $chose; // Variable commune
Ce qui sous-entend que les variables de sessions communes sont donc exploitables par tous, ou visibles par tous, selon.
A partir de là, tu fais ce que tu veux.
Le tout est bien entendu conditionné par la façon dont ta base de données est élaborée.
C'est par là qu'il faut commencer.
Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre.
C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles.
bonjour, je te remercie pour ton aide.
est que tu peux m'expliquer la difference entre:
et:
parce que il me parait que c'est la même ecriture !
en fait ce que je souhaite faire et créer un variable partager entre toute les sessions afin de pouvoir compter le totale des sessions ouvertes c'est possible avec les fichiers global.asax en asp.net en declarant une variable de visibilité public shared et je suis sur qu'on peut faire pareil avec le php puisque tout est sur le serveur.
C'est vrai.
Mais c'est ta base de données qui fait la différence.
Dans celle-ci :
Soit : Elles sont uniques et aucunes ne se ressemblent.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $_SESSION['truc'] = $truc; // Variable privée $_SESSION['machin'] = $machin; // Variable privée
Soit : Ce sont strictement les mêmes, voire via des identifiants identiques (this_id).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $_SESSION['bidule'] = $bidule; // Variable commune $_SESSION['chose'] = $chose; // Variable commune
Ensuite, c'est une question de maniplulation de ces données (script php ou mysql).
Remarque, une session s'ouvre sur le navigateur de l'utilisateur. Ce qui signifie que ce dernier ne peut absolumment pas savoir combien de sessions sont ouvertes chez d'autres.
Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre.
C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles.
Il semble évident qu'avant de transformer des variables, en variables de sessions, qu'elles doivent être connues.
Par exemple :
- Venant d'un formulaire
- Venant d'une db.
Pour ta première interrogation, il est tout à fait possible de savoir combien de sessions ont été ouvertes tel ou tel jour, si tant est qu'elles soient enregistrées en db au moment de l'identification.
Mais celà ne va pas résoudre ton probléme de fond.
En fait, j'essaye de t'amener sur un chemin théorique pour que tu puisses exploiter ce "partage".
En concordance avec ce que je disais precedemment, la grosse différence :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Je veux aller et voir... WHERE truc ='$truc' //Il n'y en a qu'un seul qui peut y aller. Je veux aller et voir... WHERE chose ='$chose' //Tous peuvent y aller.
Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre.
C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles.
oui j'ai bien saisi ça depuis ta premiére intervention mais vu que ça concerne plus coté manipulation de base de données ou de données elle même c'était un peu plus avancée par rapport à mon problème ou j'était bloqué dans les possibilitées pour faire ce partage et comment le faire. mais là ça va mieux
je te remercie beaucoup pour ton aide
Juste un aparté. ( Ce n'est pas une critique )
Je vois que tu es développeur informatique et que tu veux, depuis un projet ou une idée, développer en aval.
Ce n'est pas ma philosophie et elle peut être discutable.
Mais personnellement, je préfére de loin développer en amont, et suivant ce schéma :
1 - Quelle destination finale ? // Je veux que....
2 - Quels besoins pour aboutir à 1 ?
3 - Quels moyens pour aboutir à 2 ? ( scripts, db, sessions, identification, etc...)
D'ordinaire, je fais celà sur un simple bout de papier, un check-list en quelque sorte.
Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre.
C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles.
je te remercie pour ce conseil les conseils sont les bienvenu biensur,
mais en étant développeur je suis au courant qu'il faut procéder par ce bout de papier le problème réside dans les moyens necessaires, vu que je n'ai que moins d'un ans en php j'ai encore quelque problèmes pour m'en servir des moyens offerts par ce dernier.
encore un merci pour le conseil c'est trés gentil
J'ajoute ma pierre à l'édifice.
Comme son nom l'indique les variables de sessions sont faites pour les sessions (par utilisateur). Je te conseille plutôt de créer des variables d'application séparées des sessions qui seront vu par tous les utilisateurs.
Ces variables peuvent être en base de données, dans un fichier ou en cache mémoire. PHP contrairement à d'autres langages n'en a pas, il faudra donc créer ta propre API ou en réutiliser une existante.
Un exemple au pif:
http://www.tek-tips.com/faqs.cfm?fid=1825
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager