Introduction aux sessions et aux cookies en PHP

Méthodes de requête HTTP en PHP
Gestion des fichiers en PHP

Pour mener à bien les activités de demande et de réponse, les pages Web doivent stocker temporairement ou définitivement des données. Presque tous les langages de développement Web ont des sessions et des cookies pour stocker les informations client et serveur, offrant une expérience transparente et sécurisée. Cet article passera en revue les sessions PHP et les cookies en détail.

Que sont les cookies et les sessions ?

Les cookies sont de petits fichiers qui sont enregistrés sur l'ordinateur du client et peuvent comprendre informations sur l'utilisateur, les nécessaire, la réponse et le serveur. Ils sont livrés au serveur avec les requêtes, permettant au serveur d'identifier l'utilisateur. Un utilisateur peut également créer son propre biscuits et y stocker des données pour un accès ultérieur. Une session est un objet qui stocke des données relatives à un visiteur spécifique tout au long de ses visites, y compris les informations de connexion, les détails du compte et d'autres entrées de formulaire.

Comment créer un cookie en PHP

PHP setcookie() méthode est utilisée pour créer un nouveau cookie. La syntaxe générale pour créer un cookie en PHP est la suivante :

setcookie(name, value, expire, path, domain, secure, httponly);

Le premier paramètre, name, est le seul requis. Les autres paramètres sont facultatifs. Voici un exemple de création de cookie :

setcookie("my_first_cookie","It contains a string");

Comment récupérer les cookies et leur valeur ?

PHP stocke les cookies dans le $_COOKIE global variable. Pour obtenir un cookie et sa valeur, il suffit de fournir le nom du cookie à la variable globale. Voici un exemple d'utilisation de la variable globale pour acquérir un cookie :

$_COOKIE["my_first_cookie"] // will return "It contains a string"

Comment supprimer les cookies ?

Un cookie peut être configuré pour expirer après un certain laps de temps, après quoi il sera immédiatement détruit. Voici un exemple de génération d'un cookie avec une expiration d'un jour fiable:

setcookie("my_first_cookie","It contains a string", time() + (86400), "/"); // 86400 = 1 day

Étant donné que la période d'expiration du cookie doit être en secondes, nous avons utilisé le fiable() pour renvoyer l'heure actuelle et ajouter le nombre de secondes dans une journée (86400).

Comment mettre à jour les cookies ?

Le même setcookie() peut être utilisée pour mettre à jour un cookie. Invoquez simplement le fonction avec le nom du cookie et définissez les nouveaux arguments. Voici un exemple de modification de la période d'expiration d'un cookie à deux jours :

setcookie("my_first_cookie","It contains a string", time() + (86400 * 2), "/"); // 86400 = 1 day

Il convient de mentionner que les cookies sont automatiquement des URL codée lorsqu'il est soumis dans une demande et décodé lorsqu'il est reçu. La fonction setrawcookie() peut être utilisée pour désactiver cela.

Vous pouvez également supprimer un cookie en mettant à jour son heure d'expiration à une date passée. Voici un exemple de suppression immédiate d'un cookie :

setcookie("my_first_cookie","", time() - 3600);

Votre navigateur autorise-t-il les cookies ?

Voici un moyen simple de vérifier si votre navigateur a activé les cookies :

if(count($_COOKIE) > 0) {
  echo "Cookies are enabled.";
} else {
  echo "Cookies are disabled.";
}

Comprendre les sessions PHP

Le protocole HTTP ne conserve pas le statut d'un utilisateur sur une page Web. Sessions sont utilisés pour résoudre le défi de la persistance et de l'accès à une variable sur plusieurs pages Web. Dans cette partie, nous verrons comment utiliser les sessions PHP pour stocker et accéder aux valeurs.

Démarrer une session

En PHP, utilisez la session Commencez() méthode pour lancer une session. Cette méthode démarre une nouvelle session ou revient à une session existante. Il est essentiel de noter que cette fonction doit être appelée avant que toute sortie ne soit transmise au navigateur ; sinon, une erreur sera générée. Voici un exemple de démarrage d'une session :

<?php
session_start();

Stocker des données

Après avoir démarré une session, vous pouvez utiliser la variable globale $_SESSION pour enregistrer des données dans la session. Les données sont enregistrées sous forme de paires clé-valeur, où la clé est le variable nom et la valeur sont les données à enregistrer. Voici un exemple de stockage de données dans une session :

<?php
session_start();
$_SESSION['username'] = "JohnDoe";

Récupération des données

Pour récupérer les données d'une session, vous pouvez utiliser le $_SESSION variable globale et accédez à la clé des données que vous souhaitez récupérer. Voici un exemple de récupération de données d'une session :

<?php
session_start();
echo $_SESSION['username']; // will output "JohnDoe"

Suppression de données

Pour supprimer des données d'une session, vous pouvez désactiver la clé des données que vous souhaitez supprimer. Voici un exemple de suppression de données d'une session :

<?php
session_start();
unset($_SESSION['username']);

Détruire une session

Pour détruire une session, vous pouvez utiliser le session_destroy() une fonction. Cette fonction supprimera toutes les données stockées dans la session et mettra fin à la session. Voici un exemple de destruction d'une session :

<?php
session_start();
session_destroy();

Questions et réponses

A quoi servent les cookies en PHP ?
Les cookies sont de petits fichiers stockés sur l'ordinateur du client qui peuvent contenir des informations relatives à l'utilisateur, à la demande, à la réponse et au serveur. Ils sont envoyés avec les requêtes au serveur, permettant au serveur d'identifier l'utilisateur.

Comment créer un cookie en PHP ?
PHP setcookie() méthode est utilisée pour créer un nouveau cookie. Il est important de noter que le premier paramètre, name, est le seul obligatoire, tandis que les autres paramètres sont facultatifs.

Comment obtenir la valeur d'un cookie en PHP ?
Les cookies sont stockés dans la variable globale $_COOKIE en PHP. Pour obtenir un cookie et sa valeur, vous pouvez simplement passer le nom du cookie à la variable globale.

Comment supprimer un cookie en PHP ?
Vous pouvez définir un délai d'expiration pour un cookie, après quoi il sera automatiquement supprimé. Vous pouvez également mettre à jour l'heure d'expiration d'un cookie à une date passée afin de le supprimer immédiatement.

A quoi servent les sessions en PHP ?
Les sessions sont utilisées pour conserver et accéder à une valeur sur plusieurs pages Web.

Des exercices:

  1. Quelle est la différence entre une session et un cookie ?
  2. Comment démarrer une session ?
  3. Comment définir une variable de session ?
  4. Comment détruire une session ?
  5. Comment paramétrer un cookie ?
  6. Comment récupérer la valeur d'un cookie ?
  7. Comment supprimer un cookie ?

Réponses:

  1. Une session est un moyen de stocker des données sur le serveur, tandis qu'un cookie est un moyen de stocker des données sur l'ordinateur du client. Les sessions sont généralement utilisées pour l'authentification et l'autorisation, tandis que les cookies sont utilisés pour les préférences et le suivi des utilisateurs.
  2. Pour démarrer une session en PHP, utilisez la fonction session_start().
  3. Pour définir une variable de session en PHP, utilisez le tableau superglobal $_SESSION, comme ceci : $_SESSION['variable_name'] = 'value';
  4. Pour détruire une session en PHP, utilisez la fonction session_destroy().
  5. Pour définir un cookie en PHP, utilisez la fonction setcookie(), comme ceci : setcookie('cookie_name', 'value', time() + (86400 * 30), '/');
  6. Pour récupérer la valeur d'un cookie en PHP, utilisez le tableau superglobal $_COOKIE, comme ceci : echo $_COOKIE['cookie_name'];
  7. Pour supprimer un cookie en PHP, utilisez la fonction setcookie() avec une date d'expiration dans le passé, comme ceci : setcookie('cookie_name', ”, time() – 3600);
Méthodes de requête HTTP en PHP
Gestion des fichiers en PHP

Restez à jour sur PHP !

Nous ne spammons pas !

en English
X
Remonter en haut