A quoi sert les session en php

Fermé
rwikus Messages postés 871 Date d'inscription lundi 29 décembre 2008 Statut Membre Dernière intervention 18 mai 2012 - 10 oct. 2009 à 22:02
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 - 10 août 2010 à 09:52
Bonjour,
a quoi peut servir la notion de session j'ai lu des tuto et tout et j'arrive toujours pas a comprendre mercii

3 réponses

kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
10 oct. 2009 à 23:28
Yo!

A mémoriser des données entre plusieurs pages visitées.
L'avantage des sessions, c'est qu'elles sont par client. C'est à dire que si monsieur X se connecte sur commentcamarche.net et que monsieur Y fait pareil, ils n'auront pas les mêmes données de session.

Qu'entends-je par mémoriser des données entre deux pages visitées?
Par exemple lorsque tu te connectes sur un site, tu entres ton login et ton mot de passe. Le site va regarder dans sa base de données si la paire login/mot de passe est correct et va insérer des variables dans ta session, comme par exemple ton nom d'utilisateur et le fait que tu es connecté.
Comme ça, les prochaines pages que tu visiteras sur le site récupèreront ces données et sauront que tu es connecté et qui tu es. Ca t'évite de te relogger à chaque page du site :)
9
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
10 oct. 2009 à 23:29
Si tu cliques sur "memoriser", tu vas tomber sur une page qui n'a rien à voir. Amusant...
0
Utilisateur anonyme
3 mars 2010 à 22:11
bonjour,
j'ai commencer l'aprentissage du php depuis quelques jours et moi aussi j'ai du mal à comprendre le principe de sessions, aprés la creation d'une session et l'enregistrement de variables est ce qu'en sera obligé de recharger ses variables pour chaque page visitée?
je vous remrecie pour vos répenses.
0
Non, c'est automatique, si les sessions sont actif
0
Colbi97 Messages postés 564 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 25 novembre 2015 12
Modifié par Colbi97 le 10/08/2010 à 09:49
Salut,
C'est effectivement automatique si tu n'oublie pas de mettre
session_start();
au début de chacune de tes pages.
0
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 193
10 août 2010 à 09:52
pour pousser un peu plus loin ta connaissance sur les session:
les données que tu enregistre dans le tableau $_SESSION sont enregistrées dans un dossier (nomém session) sur le serveur. Ces données sont à priori protégées.
lorsqu'un client se connecte à une page utilisant session_start , php regarde si un coockie nommé php_sess_id (ou un truc du genre) a été envoyé dans la requete. Si oui, ca veut dire qu'un fichier existe surement déja pour cette personne, et charge le fichier correspondant. Si non, un fichier est créé, et un coockie identifiant la session est envoyé à l'utilisateur, qui le reverra à chaque fois.


il y a quelques explications dans cet article que j'ai fais il y a quelques temps:
https://www.commentcamarche.net/faq/20499-fusion-de-sessions-php#le-fonctionnement-des-sessions
bon, j'ai toujours pas vraiment trouvé d'applications à ce code, mais il démontre le fonctionnement des sessions.

Une session est potentiellement piratable (il suffit de tomber sur une valeur du cookie d'un autre utilisateur). Je te conseilles de "sécuriser" ca en vérifiant que l'ip de la session reste toujours identique (peut etre que des fonctions php existent pour ca).
0