web-dev-qa-db-fra.com

Quelle est la différence entre les sessions et les cookies en PHP?

Quelle est la distinction entre Sessions et Cookies en PHP?

61
Harsh

Un cookie est un morceau de données stocké par le navigateur et envoyé au serveur à chaque demande.

Une session est un ensemble de données stockées sur le serveur et associées à un utilisateur donné (généralement via un cookie contenant un code d'identification).

88
Quentin

Cookies sont utilisés pour identifier les sessions. Visitez n'importe quel site qui utilise des cookies et affichez Chrome inspectez un élément, puis le réseau ou FireBug si vous utilisez Firefox.

Vous pouvez voir qu’un en-tête est envoyé à un serveur et qu’il est également appelé un cookie. Il contient généralement des informations personnelles (telles qu'un identifiant) pouvant être utilisées sur le serveur pour identifier une session. Ces cookies restent sur votre ordinateur et votre navigateur se charge de les envoyer uniquement aux domaines qui y sont identifiés.

S'il n'y avait pas de cookies, vous enverriez un identifiant unique pour chaque demande via GET ou POST. Les cookies sont comme des identifiants statiques qui restent sur votre ordinateur pendant un certain temps.

Un session est un groupe d'informations sur le serveur associé aux informations de cookie. Si vous utilisez PHP, vous pouvez vérifier l'emplacement de session.save_path et réellement "voir les sessions". Ce sont des fichiers sur le système de fichiers du serveur ou sauvegardés dans une base de données.

Screenshot of a Cookie

50
toomasr

Une session est un bloc de données gérées sur le serveur qui maintient l'état entre les requêtes HTTP. HTTP est fondamentalement un protocole sans état; les sessions sont utilisées pour lui donner un état d’état.

Un cookie est un extrait de données envoyé aux clients et renvoyé par ceux-ci. Les cookies sont souvent utilisés pour faciliter sessions car il indique au serveur quel client a géré quelle session. Il existe d'autres moyens de procéder (requête, magie, etc.), mais les cookies sont probablement les plus courants.

12
seand

La principale différence entre une session et un cookie réside dans le fait que les données de session sont stockées sur le serveur, tandis que les cookies stockent les données dans le navigateur du visiteur.

Les sessions sont plus sécurisées que les cookies car elles sont stockées sur le serveur. Le cookie peut être désactivé depuis le navigateur.

Les données stockées dans le cookie peuvent être stockées pendant des mois ou des années, en fonction de la durée de vie du cookie. Mais les données de la session sont perdues lorsque le navigateur Web est fermé.

11
Armin John

Les cookies sont stockés dans le navigateur sous forme de fichier texte.Il stocke une quantité limitée de données, jusqu'à 4kb [4096bytes]. Un seul cookie ne peut pas contenir plusieurs valeurs, mais oui peut avoir plus d'un cookie.

Les cookies sont facilement accessibles, ils sont donc moins sûr. La fonction setcookie () doit apparaître AVANT la balise.

Les sessions sont stockées sur le serveur. Il n'y a pas de limite de stockage de ce type pour la session. Les sessions peuvent contenir plusieurs variables. Depuis, elles ne sont pas facilement accessibles et sont donc plus sûres que les cookies.

5
Elangovan

Cookies: Un cookie est souvent utilisé pour identifier un utilisateur. Un cookie est un petit fichier que le serveur intègre sur l'ordinateur de l'utilisateur. Chaque fois que le même ordinateur demande une page avec le navigateur, il envoie également le cookie.

Session: une session est utilisée pour stocker des informations sur, ou modifier les paramètres d'une session utilisateur. Les variables de session contiennent les informations relatives à un utilisateur et sont disponibles pour toutes les pages d'une application.

1
Gaurank Verma

Session

La session est utilisée pour maintenir un dialogue entre le serveur et l'utilisateur. Il est plus sécurisé car stocké sur le serveur, nous ne pouvons pas y accéder facilement. Il intègre des cookies sur l'ordinateur de l'utilisateur. Il stocke des données illimitées.

Biscuits

Les cookies sont stockés sur l'ordinateur local. Fondamentalement, il conserve l'identification de l'utilisateur, ce qui signifie qu'il suit l'enregistrement des visiteurs. C'est moins sécurisé qu'une session. Il stocke une quantité limitée de données et est maintenu pendant une durée limitée.

1
user7166162

Il manque une partie de toutes ces explications sur la manière dont les cookies de session et de session sont liés: par sessionID. Le cookie va et vient entre le client et le serveur - le serveur relie l’utilisateur (et sa session) par la partie identifiant de session du cookie. Vous pouvez également envoyer SessionID via l’URL (ce n’est pas la meilleure pratique), au cas où les cookies sont désactivés par le client.

Ai-je bien compris?

1
Sam-T