Easy-Micro


LANGAGE Langage PHP
Cookies PHP

Gestion des cookies en PHP

Les cookies sont adaptées à la sauvegarde de données. Ce sont de petit fichier texte qui permettent de stocker des informations sur le disque dur du visiteur.

Il peut-être utile, par exemple, de faire en sorte qu'un visiteur déjà inscrit sur votre site, n'est pas besoin de devoir s'identifier à chaque connexion, à chaque visite. Seul les cookies permettent cette technique d'auto-identification car l'utilisation des sessions PHP ne permettent pas de reconnaitre un visiteur sans identification préalable. Les cookies restent donc, malgés les sessions PHP, très utiles.

Pour créer un cookie, on utilise la fonction PHP :

setcookie(nom, valeur, expire, chemin)

- Un nom qui peut être afficher via un
<?php echo $_COOKIE['nomducookie']; ?>
- Une valeur, c'est à dire un contenu (souvent le prénom du visiteur).
- Le temps - en seconde - après lequel le cookie expire. A l'aide de la fonction time(), on ajoute le nombre de secondes après lequel on veut que le cookie expire (time()+3600 = 1 heure).
- Le chemin sur le serveur sur lequel le cookie sera disponible. Si la valeur est '/', le cookie sera disponible sur l'ensemble du domaine. Sinon, utilisez la syntaxe: '/monrépertoire/'

Attention: Les cookies font partie des en-têtes HTTP, ce qui impose que setcookie() soit appelée avant tout affichage de texte.

Exemple de création d'un cookie nommé 'identifiant'

<?php
$prenomvisiteur = $_POST['prenomvisiteur'] ; // on récupère une valeur
$expiration = time()+(3600*24*30); // on fixe la date d'expiration à 30 jours
setcookie("identifiant",$prenomvisiteur,$expiration,"/");
?>

Exemple de lecture du cookie 'identifiant'

<?php
// on ouvre une session pour y stocker le cookie
session_start();
// Si le cookie 'identifiant' existe
if( isset($_COOKIE['identifiant']) ) {
// on le stock dans une variable (pratique pour affichage)
$identifiant = $_COOKIE['identifiant'];
// et on le stock dans la variable de session (facultatif)
$_SESSION['visiteurinscrit'] = $identifiant;
}
?>

Exemple de code pour l'affichage des cookies:
<?php echo $_SERVER["HTTP_COOKIE"]."<br />"; ?>
Pour supprimer un cookie, il suffit de le recréer avec tout ces paramètres à zéro :
<? setcookie("identifiant","",0,"/"); ?>
En local, le cookie se présente sous la forme nom_de_session@127.0.0.1. Sous Windows XP/2003, voir votre cookie "identifiant" dans "C:\Documents and Settings\votre nom\Local Settings\Temporary Internet files"

Trouvez vos cookies sous Windows 7 directement par
C:\Users\Administrateur\AppData\Local\Microsoft\Windows\Temporary Internet Files

ou bien depuis le navigateur IE8 par le menu, Outils / options Internet / Onglet "Général" / Historique de navigation, Bouton "Paramètres" / Bouton "Afficher les fichiers".

En test local, votre cookie est nommé : cookie:nom_de_login_windows@127.0.0.1


Suivez les aventures des skippers aquitains sur EasyVoile.com
Flux RSS Easy-Micro - Abonnez-vous Easy-Micro [ François Bisch ]
Mercredi 20 mars 2019 - Semaine 12 - Saint Herbert (Demain: Sainte Clémence)
Aujourd'hui, c'est l'anniversaire de Danièle Gilbert (1943-76 ans), animatrice de télévision française et de Marthe Villalonga (1932), actrice française. Autre 20 mars: 1815 : de retour de l'île d'Elbe et après une marche triomphale sur Paris, Napoléon entre dans la capitale. 1965 : France Gall gagne l'Eurovision pour le Luxembourg avec Poupée de cire poupée de son.
Haut de page Easy-Micro