Accueil > Forum > > > > Session pour les neuneus !
Session pour les neuneus !
jeudi 2 février 2006 à 16:05:45 |
Session pour les neuneus !

Tartuffe
|
Salut tous... Je suis le neuneu de service (mais, bon à ma décharge, tout ce que j'ai trouvé sur le web en matière de session n'est pas explicite, loin de là !). Je croyais (à tord) que mes sessions marchaient correctement... Ce que je fait : Page '1' : <? session_start(); .... Page 'n' : <? session_id(); session_start() ... mise en session de différente variable ... Ce qui se produit : Lorsque je teste en solitaire sur le site, c'est bon, mais lorsqu'il y a plusieurs personnes connectées, les variables de session $_SESSION['truc'] prennent une fois la valeur du connecté A, une fois celle du conecté B, etc. Ce que j'ai donc modifié : Je vaudrais éviter d'utiliser les cookies, donc, en fouillant sur le web, je trouve que le 'session.use_trans_sid' est à 'Off' sur mon serveur. Donc il me semble qu'il faut utiliser mon 'session.save_path'. J'ai donc créé à la racine ledit 'session.save_path' avec les droit correspondant... Mais on me dit aussi qu'il me faut un 'header("Location:" . "$adresse . "?" . SID);' Alors là je dis : mais c'est koi se bord... ? Bref la question est longue mais simple : Je veux bien mettre des tonnes de truc dans mon URL, mais koi PRECISEMMENT ? Comment je récupère l'info mise en URL et comment je m'assure qu'elle me rappellera sur le serveur la bonne session, et pas une autre ? A quoi sert le répertoire 'session.save_path' ? Quelle est la forme "générique" de mon header de la page 'n' après mon session_start(), quelque chose comme ca ? <? session_start(); header("Location:"."path de la page 'n' ou de la page '1'."?".SID); ... HELLLPPPPPPPPPP !!!!!!!!! PekLandais, dans la merde là...
|
|
jeudi 2 février 2006 à 16:16:44 |
Re : Session pour les neuneus !

J_G
|
Salut neuneu ! (c'est amical, pis c'est toi qui le dit...)
Avant de te lancer dans les délires du "j'te-passe-le-ID-dans-l'URL"... Il faut savoir que si tu test les connexions multiples à partir du même couple (ordi, navigateur)...
Forcément ça va coinçer !!!!!!!!!!!!!!!!!!!!!!!
Je dis ça parceque tu annonce d'entrée ton ignorance en PHP et Session !
Serait-ce une explication de to Pb ?
A+
|
|
jeudi 2 février 2006 à 16:18:03 |
Re : Session pour les neuneus !

malalam
|
Réponse acceptée !
Hello, en rapide :
- tu n'as rien à mettre dans l'url. - les sessions sont sous contrôle utilisateur! J'entends par là que chaque utilisateur a SA session.
Imaginons: user A et user B sur ton site en même temps. Tu stockes leur nom en session :
page 1 <?php session_start (); $_SESSION['nom'] = nom_user // on imagine que tu le récupères d'un formulaire). ?> page 2: <?php session_start (); echo $_SESSION['nom']; // pour le user A, va afficher 'A', et pour le user B, va afficher 'B'. ?>
Pourquoi ? Parce que la session est un cookie côté serveur. Il est stocké dans un répertoire dédié, sur ton serveur (où, ça dépend de ta configuration). C'est un fichier texte, avec pour nom, le SID (l'id de la session courante si tu veux...or, tu peux avoir plein de sessions courantes, autant que tu as d'utilisateurs sur ton site, en fait).
Pour simplifier, dans le fichier : a45btf488ere1sf5s46ef7e5fe55d tu as 'nom' => 'A' et dans le fichier rt446a5ef76é511faa32df1za355 tu as 'nom' => 'B'
TU n'as rien à mettre dans l'url car c'est transparent pour toi. La session est passée (l'id de session en fait) de page en page automatiquement, si tu as bien pris grade de commencer TOUTES tes pages avec session_start (); (le mieux est encore de l'inclure via un fichier commun).
|
|
jeudi 2 février 2006 à 16:42:12 |
Re : Session pour les neuneus !

Tartuffe
|
Well, je teste de suite avec mon 'session_path_xxx' sans rien rajouter en URL...PS : pour J_G...D'où "Je dis ça parceque tu annonce d'entrée ton ignorance en PHP et Session !"En php, non, et en session, je la découvre, nuance [: - ))PekLandais
|
|
jeudi 2 février 2006 à 22:01:09 |
Re : Session pour les neuneus !

Tartuffe
|
Réponse acceptée !
Et bien me revoilou.... Pour l'instant pas de "décloisonnement" entre valeur de variable de différente session ce qui m'ait arrivé une fois, mais j'ai un doute terrible sur leur fonctionnement .. Voici l'exemple: <? session_id(); session_start(); if (!isset($_SESSION[id])){ echo "y'a bien longtemps qu'on ne vous a pas vu !<br><br><br>"; echo " Time_out de session activé...<br>"; echo "<blocquote><blocquote><blocquote><a href=\"http://www.truc.info/home.php\" target=\"_top\">Do it again Sam !</a></blocquote></blocquote></blocquote>"; exit; } // jusqu'à là, tout va bien et le test précédent marche dès les 180 secondes réglementaires avant TIMEOUT // divers blabla // requete select de tout les ID présent en BdD $id=$info_j['ID_P']; if($id==$_SESSION[id]){ imagesetpixel($imagecible,$x_pix,$y_pix,$couleur_moi); $lib="Ma trogne"; } else{ imagesetpixel($imagecible,$x_pix,$y_pix,$couleur_eux); $lib="leur trogne"; } //et encore... ?> Et bien j'ai tout en couleur "$couleur_moi" et tous les LIB sont Ma trogne. Hors ce n'est pas possible puisque l'init de $_SESSION[id]="ID_P, résultat de requete selon LOG/PASS" et que fatalement dans ma boucle de test "if($id==$_SESSION[id])" il n'y en a qu'un pour lequel le test est vrai... C'est la gestion de mes sessions, où c'est moi. _____________________________ Pris d'un doute tout d'un coup... Le problème ne viendrait pas de ca : - ma variable de test est $id - l'affectation d'un variable de session s'effectue sans le $. - Hors le test est fait entre $id et [id]. Donc il y aurait affectation à la volée, et fatalement tous serait identique ? _____________________________
PekLandais
|
|
jeudi 2 février 2006 à 23:36:38 |
Re : Session pour les neuneus !

Tartuffe
|
Réponse acceptée !
Oki ! Oki ! C'est simple les sessions... Si ca ne marche pas c'est de la faute du serveur, mais pas de vous.
session_start(); et puis voilà ! Sur chaque page et hop, prisunic....
Pas de session_id();qui traine, ni de Header(LOCATION:blabla); suite à un lien de type<a href="path?variable=session_id()">lien</a>; Rien de rien ! Rien de tout cela, sauf dans les cas tordus où c'est nécessaire. Même pas besoin de cookies, pour vous dire ! session_start(); , point-barre !!!!!! CEPENDANT, il y a une contrainte, et une grosse... ____________________________________ $id=$info_j['ID_P']; if($id==$_SESSION[id]){ imagesetpixel($imagecible,$x_pix,$y_pix,$couleur_moi); $lib="Ma trogne"; } else{ imagesetpixel($imagecible,$x_pix,$y_pix,$couleur_eux); $lib="leur trogne"; } ____________________________________ Petit rappel sur les sessions : "...l'affectation de variable s'effectue sans le caractère $". Vous la voyez maintenant l'erreur... La contraine c'est de s'assurer, qu'en aucun cas une variable de session n'aura le même nom qu'une autre variable. Sinon, c'est le chaos. J'en déduis qu'il faut impérativement se faire une méthode de nommage des variables de session différente de la méthode de nommage des variables 'classiques'. Et il faut s'y tenir !
PekLandais
|
|
vendredi 3 février 2006 à 07:17:56 |
Re : Session pour les neuneus !

malalam
|
Réponse acceptée !
Hmmm...ou d'avoir les register_globals à Off.
|
|
Cette discussion est classée dans : page, session, path, start, sid
Répondre à ce message
Sujets en rapport avec ce message
undefined index page [ par RM50Man ]
Voilla mon erreur c undefines index page je comprend pas, si kelkun peut m expliquer merci!!!include("htmlpage.php"); include("admin/connect.php");
session_start sur ts page de site ? [ par tibine974 ]
Meuh ! Fais la vache Yo ! voilà deux questions qui me permetront je l'espére de devenir une lumiére : 1°) Dois-je mettre session_start(); sur tous l
Je n'arrive pas a démarer une session via session_start(); [ par Icarius44 ]
Bonjour à tous, j'ai eu beau chercher j'ai pas trouver, je tente de créer/ouvrir une session avec la fonction session_start() mais il m'affiche alors
xmlhttp et session_start [ par fcdconnect ]
Bonjour,j'ai un petit soucis de recuperation des info de ma session lors de l'envoi d'une requete avec xmlhttp :sur la page php qui execute la requete
php session_start [ par regis62 ]
Bonjour.je suis un débutant en php et j'ai un probléme.Dans la page acces_eleve un éléve se connect (grace à des formulaires).Dans la page requete_ele
Page blanche sur session_start [ par bruno3591 ]
Bonjour, j'ai une page blanche quand je valide le formulaire d'authentification. Il y a 2 pages, une pour le formulaire et l'autre pour traiter les i
FONCTION SESSION START WARNING S'AFFICHE [ par mannoula_2007 ]
Bonjour, j'ai un prob lorsque j'ai fais l'ajout des balises meta dans le code de la page index.php Warning: session_start() [function.session-start]:
Probleme de session [ par clementga ]
Bonjour,J'ai développé un site en php dans lequel il faut s'identifier pour entrer.Pour vérifier sur chaque page si l'utilisateur est bien identifié,
code php exécuté deux fois [ par thierry la fronde ]
bonjour, je souhaitais exposer un paradoxe : J'ai une requête pour mysql dans un fichier php et elle s'exécute deux fois avec Firefox ET Netscape. Par
Session et IIS [ par tigidiwigi ]
Bonjour, J'ai un problème de session avec IIS. Je vais expliquer directement avec un exemple, ça sera plus clair : Le code suivant fonctionne correcte
Livres en rapport
|
Derniers Blogs
XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|