Gestion des sessions [PHP] - PHP - Programmation
Marsh Posté le 17-11-2003 à 22:02:28
sPiKe a écrit : |
c'est surement parce qu'il n'y a pas de session
Marsh Posté le 17-11-2003 à 22:12:29
Harkonnen a écrit : |
tu m'aide beaucoup tu sais....
en fait ce que je souhaite faire c'est éviter de réecrire toutes mes URL en ajoutant le SID a chaque fois
sur le coup je pensais regler ce probleme en modifiant temporairement le php.ini avec ini_set("session.use_trans_sid","1" ) mais il n'est pas possible de modifier cette option :-/
[mode réponse impossible]Joce comment t'as fait ?[/mode réponse impossible]
Marsh Posté le 18-11-2003 à 10:12:50
les sessions sous php c'est plutot pas mal!
regarde, c'est tout bien expliqué, tout bien détaillé :
http://dev.nexen.net/docs/php/annotee/ref.session.php
Marsh Posté le 18-11-2003 à 15:03:23
Mr yvele a écrit : les sessions sous php c'est plutot pas mal! |
ben c'est les sessions que j'utilise actuellement je vois po ou tu veux en venir?
par contre si je compte rendre mon forum compatible php3 & php4 par la suite... l'utilisation d'une table sera obligatoire(plus facile a coder que de simuler les sessions par des fichiers crée soit meme je pense)
Marsh Posté le 18-11-2003 à 23:06:59
les sessions marchent pas avec php3 et php4?! (avec php4 ça marche pas??!! )
Marsh Posté le 18-11-2003 à 23:08:39
Mr yvele a écrit : les sessions marchent pas avec php3 et php4?! (avec php4 ça marche pas??!! ) |
mais si ca marche ! mais ce ke je veux dire, les session en php3 c t pas existant
Marsh Posté le 18-11-2003 à 23:11:35
ah oké..
ben si t'as pas les sessions disponible, utilise les cookies
Marsh Posté le 19-11-2003 à 00:50:27
sPiKe a écrit : |
ben il l'a pas fait, y'a pas de sessions... ct pas une blague
Marsh Posté le 19-11-2003 à 00:52:38
the real moins moins a écrit : ben il l'a pas fait, y'a pas de sessions... ct pas une blague |
ben justement, il veut savoir comment ça marche sans session.. a ce que j'ai cru comprendre..
c'est pourquoi j'ai retorqué comme un ouf : "les cookies mon ptit gars! "
voila.. maintenant tu connais toute l'histoire moins moins..
Marsh Posté le 19-11-2003 à 00:58:37
on c embobiné les pinceaux lol
bon en gros je veux savoir si c possible d'utiliser les sessions sans que l'id de session soit visible dans l'URL meme si cookie desactivé (histoire de pas refaire ttes mes URL ds mon code en ajoutant le SID
donc sans $_GET ni $_COOKIE
dc en reprenant ce ke g dit ds mon 1er post j'aimerais savoir si c possible de le faire en utilisant le session_id() ds une variable globale
sinon je vois po comment faire sans session pr garder les infos du user
Marsh Posté le 19-11-2003 à 01:02:39
sans session et sans cookies!
Marsh Posté le 19-11-2003 à 01:04:15
ben il a fait comment joce alors pr po avoir d'id de session visible? soit il utilise pas de session soit il en utilise mais procede autrement, enfin la chui perdu
p'tet un problement con mais la chui coincé lol
Marsh Posté le 19-11-2003 à 01:06:21
attend je désactive les cookies et je regarde comment il réagit ce forum de merde!
Marsh Posté le 19-11-2003 à 01:08:20
JOCE IL UTILISE PAS DE SESSION, 3e edition
ensuite, l'id de session dans l'url, qd cookies desactivés, se rajoute tout seul, c php qui le fait, t'as pas besoin de changer tes urls
Marsh Posté le 19-11-2003 à 01:09:35
ça marche pas sans les cookies mec!
je m'identifie.. ça passe.. et en fait des que je reload ma page ou que je clique sur un liens, ça paume toutes mes donnés..
Marsh Posté le 19-11-2003 à 01:11:07
euh vs avez pas de browser ou quoi? "view cookies", spa pour les chiens
Marsh Posté le 19-11-2003 à 01:12:47
moi je fait un telnet sur le port 80
Marsh Posté le 19-11-2003 à 01:14:31
bon en fait le gars la.. il veut savoir comment passer des informations d'un page à l'autre, sans utiliser les sessions!
c'est ça?
si c'est ça, la réponse c'est, soit :
- tu passes tes variables dans l'url
mais ça tu veux pas...
2eme solution :
les cookies!!!
Marsh Posté le 19-11-2003 à 13:06:19
the real moins moins a écrit : JOCE IL UTILISE PAS DE SESSION, 3e edition |
faux en partie: php ajoute l'id de session automatiquement uniquement si tu spécifie l'option session.use_trans_sid à 1
donc si j'ai bien compris soit l'utilisateur utilise le cookie et l'id de session n'est po visible ds l'url soit il les desactive et le SID est dans l'URL(donc dans se cas je suis obligé d'utiliser une fonction d'URL rewriting - ce ke je voulais eviter - )
donc au final Joce n'utilise pas de session comme vs l'avez dit(je viens de desactiver les cookie pr verif comme Mr yvele) mais uniquement des cookie
la question c'est POURQUOI n'utilise t'il pas de session, c'est quand meme pas pratique de devoir s'authentifier a chaque fois avec une meme instance du browser !
et ma proposition de départ : stocker l'id de session ds une variable globale, c po envisageable?
Marsh Posté le 19-11-2003 à 13:22:53
> faux en partie: php ajoute l'id de session automatiquement
> uniquement si tu spécifie l'option session.use_trans_sid à 1
oui, bon, en effet..
> la question c'est POURQUOI n'utilise t'il pas de session
je n'oserais m'exprimer à ce sujet
et ta variable globale tu la stockes ou?
Marsh Posté le 19-11-2003 à 13:27:02
the real moins moins a écrit : > faux > la question c'est POURQUOI n'utilise t'il pas de session |
ben je pensais la déclarer ds un fichier que j'inclu ds ttes les page qui en on besoin
genre le fichier contient entre autre
$id_session = session_id();
ce qui me permet de recuperer l'id de session utilisé dans l'instance courante du client
c'est encore théorique
je crois que je peux egalement recuperer cette variable ds des fonctions en utilisant $GLOBALS['id_session'];
Marsh Posté le 19-11-2003 à 13:28:35
ha ouais, et comme ça tous les clients ont la meme id de session
Marsh Posté le 19-11-2003 à 16:23:51
bah non, ca crée un id de session unique, dc différent a chaque user (j'ai vérifié)
Marsh Posté le 19-11-2003 à 17:24:10
apres tout je peux tenter d'utiliser uniquement les cookies
vais faire des essais et vs tiens informés
Marsh Posté le 19-11-2003 à 17:26:25
mortel ce topic
je croyais que tu voulais justement une solution pour qd ton user desactivait les cookies?
Marsh Posté le 19-11-2003 à 17:30:28
the real moins moins a écrit : mortel ce topic |
en effet mais j'ai l'impression que ca va pas etre facile :-/
v essayer les 2 :
-cookies+session
-cookies seulement
faut que je vois si ca influ sur les perf :-/
l'utilisation des sessions fait un temps d'acces supplémentaire au HDD du serveur dc p-e une perte de temps pr la generation des pages
?
Marsh Posté le 19-11-2003 à 17:31:29
url ou cookies, choix cornélien n'est-ce pas?
Marsh Posté le 19-11-2003 à 17:39:00
WARNING :
je viens de faire un test tt con :
actuellement, j'utilise le session_start() ds tte mes pages pr recup la session : OK
j'ai juste viré cette ligne de l'index du forum voir si ca changeait qqch : je passe de 7-8ms à 3.8ms !
je pense avoir compris pourquoi joce ne les utilise pas !
dc le temps d'acces au HDD pr créer ou recup la session influ enormément
dc session + cookie si on veut po un forum performant = phpbb + invision power board mais pas présence-pc
voilà pourquoi les forums présence pc sont si rapide entre autre (sans compter la structure de la BDD mais c une autre histoire)
Marsh Posté le 19-11-2003 à 17:46:14
heu, j'ai p'tet parlé trop vite : j'ai constaté cette différence de perf sur mon Barton, alors que sur mon P4 la différence est quasi inexistante !?!?
une explication ?
Marsh Posté le 20-11-2003 à 23:43:15
Heu, t'as ait combien de test avec et combien de test sans?
Il suffit d'un seul logiciel qui fait une action au mauvais moment pour fausser les calculs de temps d'execution.
Marsh Posté le 21-11-2003 à 11:29:03
ben j'ai encore retesté ce matin et c'est toujours pareil pour la diff de perf !
rien de spécial qui tourne sur le Barton(mis a part l'antivirus mais que celui ci soit actif ou non ca change rien)
Marsh Posté le 21-11-2003 à 11:34:19
sPiKe a écrit : la question c'est POURQUOI n'utilise t'il pas de session, c'est quand meme pas pratique de devoir s'authentifier a chaque fois avec une meme instance du browser ! |
dans le cas de nombreux clients (ce qui est le cas de ce forum), ca a tendance à faire exploser la mémoire du serveur ...
Marsh Posté le 21-11-2003 à 11:38:37
benou a écrit : |
ballader des sessions c'est plus lent qu'une recherche dans la bdd!
Marsh Posté le 21-11-2003 à 11:56:34
Mr yvele a écrit : ballader des sessions c'est plus lent qu'une recherche dans la bdd! |
qu'entends-tu par "balader des sessions" ? ()
Marsh Posté le 21-11-2003 à 12:03:48
Mr yvele a écrit : |
j'ai pas parlé de lenteur, j'ai parlé de charge mémoire ... si tu fais pas gaffe ca monte vite : la session dure généralement 20 secondes => occupation mémoire = tout ce que tu mets dedans * nombre de user qui sont passés sur le site les 20 dernières minutes.
puis à mon avis, les recherches dans la bdd (genre vérif login) ne sont faites que quand tu postes, pas à la visualisation ...
Marsh Posté le 21-11-2003 à 12:21:33
benou a écrit : |
comment il gère le ban alors?!
donc meme pour regarder un topic, il va chercher dans la bdd
Marsh Posté le 21-11-2003 à 12:53:37
Mr yvele a écrit : comment il gère le ban alors?! |
ça dépend un peu de la proportion de ban à mon avis
perso je pense laisser un choix à l'utilisateur
Mr yvele a écrit : donc meme pour regarder un topic, il va chercher dans la bdd |
forcément, ça prend trop de place pour être tapé en RAM.
Marsh Posté le 21-11-2003 à 13:26:29
Mr yvele a écrit : |
ben évidément
comment il pourrait mettre ca en session ????
Marsh Posté le 21-11-2003 à 13:50:26
Mr yvele a écrit : |
nan je voulais dire : meme pour regarder un topic il doit loguer le type!
Marsh Posté le 17-11-2003 à 19:26:39
Je développe un forum et pour le moment l'authentification des membre est géré par les sessions PHP
j'aimerai intégrer la gestion des sessions par une table MySQL(déjà créee c'est pas le souci)
j'ai remarqué que dans les forums PHPBB & Invision Power Board entre autre que l'ID desesion était transmis par l'URL
j'aimerais éviter cela, que les cookies soient activés ou non
est ce que la recupération de l'ID de session(fct session_id() au début de mes scripts pourrait palier ce probleme selon vous?
PS : comment c'est géré dans les forums Presence PC? l'id de session n'apparait jamais