PHP 5° PARTIE : LES COOKIES

Slides:



Advertisements
Présentations similaires
Didacticiel Mon EBSCOhost
Advertisements

GESTION D’IMPRISSION SOUS WINDOWS & LINUX
Conception de Site Webs dynamiques Cours 6
Transformation de documents XML
Le répertoire de base sous W200X serveur. Il peut être intéressant de fournir pour chaque utilisateur, un répertoire par défaut dans lequel les commandes.
Internet.
Principe d identification des internautes Au service du dataWebhouse Philippe Holland :
Exposé de Système - Informatique et Réseau
TP n°2 PHP FONCTIONS ET FORMULAIRE
4.La connexion de données 4-1.Présentation 4-2.Le mode actif 4-3.Le mode passif 4-4.Les commandes.
Formulaire HTML Introduction. Définition de formulaire.
Assistance à distance Parfois on se sent bien seul face à un problème informatique surtout si on n’est qu’un simple utilisateur. Lorsqu'un problème survient.
Systèmes d’exploitation
La balise <FORM>:
Common Gateway Interface
Oct.-2000DESS IIDEE © B. BAH 1 ASP Caractéristiques dun fichier ASP Son extension : « *.asp » La balise: Son indépendance vis à vis de toute plate–forme,
SSL (Secure Sockets Layer) (couche de sockets sécurisée)
CPI/BTS 2 Programmation Web Introduction au PHP
Module 1 : Préparation de l'administration d'un serveur
Le langage ASP Les variables d'environnement HTTP avec Request.
Recherche avancée multi-champs EBSCOhost
Administration de SharePoint
Labview Programmation réseau Communication par sockets
Ecole Supérieure Privée de ingénierie et de technologie année universitaire :2013/2014 Cross-Plateform Cours JavaScript.
Les instructions PHP pour l'accès à une base de données MySql
Bibliothèque de fonctions PHP
28 novembre 2012 Grégory Petit
Introduction au langage PHP Réfs : Chap 3 p 49. Présentation PHP (Hypertext PreProcessor) est un langage de développement Web créé en 1994 par Rasmus.
Module 4 : Création et gestion de comptes d'utilisateur
Création et gestion de comptes d'utilisateur
Développement dapplications web Authentification, session.
Abderrahmane Bouarissa Damien Burglin Arnaud Sansig
PHP Géant Aurélien. PHP (Hypertext Preprocessor) Langage de scripts libre Permet produire des pages Web dynamiques dispose d'un très grand nombre d'API(Application.
Web dynamique PhP + MySQL AYARI Mejdi 2006
Module 2 : Préparation de l'analyse des performances du serveur
Module 3 : Création d'un domaine Windows 2000
Module 7 : Accès aux ressources disque
Document élaboré à Centrale Paris par Pascal Morenton LES TECHNOLOGIES DU WEB 1. LES PHASES D UN DEPLOIEMENT DE RESEAUX 2. LE LANGAGE HTML 3. LE LANGAGE.
Création de menus. Depuis la page d’accueil de votre site, cliquez sur le lien [Login] puis saisissez les identifiants qui vous ont été attribués. Connectez-vous.
PHP 2° PARTIE : FONCTIONS ET FORMULAIRE
Javascript 1° PARTIE : LES BASES
PHP & My SQL.
Date : Juillet 2014 Formation : TAI Formateur : Tayeb BENDJELTI
Techniques Internet de Base Licence 2 (Info, Maths, PC/PA) Université Jean Monnet Ruggero G. PENSA
Gérer la sécurité des mots de passe et les ressources
PHP 3° PARTIE : GESTION DE FICHIERS ET DE REPERTOIRES
Programmation multimédia 3 Les Témoins (Cookies) Semaine 4 Préparé par Marc Aubé Source :
Gestion à distance Netsh et rcmd.
Annexe 2 entêtes HTTP et cookies. Accéder aux objets requêtes et réponses Ces objets sont disponibles dans les classes clé depuis la méthode awake les.
 Requêtes MySQL en PHP Introduction
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Windows 2003 Server Modification du mode de domaine
Installation et Configuration Internet Information Server (IIS 6)
Abderrahmane Bouarissa Damien Burglin Arnaud Sansig
PHP 6° PARTIE : LES SESSIONS 1.Introduction 2.Identificateur de session 3.Variables de session 4.Client / Serveur 5.Principe 6.Ouverture de session 7.Enregistrement.
Module : Pages Web Dynamiques (Production Électronique Avancée)
 Formulaires HTML : traiter les entrées utilisateur
Initiation au JavaScript
Protocole HTTP, cookies, sessions, authentification
 Fonctions diverses, scripts PHP Variables de session Les sessions sous PHP permettent de conserver des données d'un utilisateur coté serveur, lors de.
Support.ebsco.com Didacticiel Mon EBSCOhost Didacticiel.
Architecture Client/Serveur
CPI/BTS 2 Programmation Web Les sites dynamiques Prog Web CPI/BTS2 – M. Dravet – 02/10/2003 Dernière modification: 02/10/2003.
HTML Création et mise en page de formulaire
Chaîne de requêteCookieSession Sauvegarder un état via l'url Sauvegarder l'état La technique consiste à passer des informations via l'URL sous la forme:
L. Gurret – M. Herve – P. Mignon – J. Prarioz. Introduction  Dernière étape d’analyse  Cahier des charges, spécifications et conception orientée objet.
Utiliser le dossier Mon EBSCOhost Tutoriel support.ebsco.com.
FACTORY systemes Module 2 Section 1 Page 2-3 Installation d’Industrial SQL FORMATION InSQL 7.0.
CCLEANER INSTALLATION ET FONCTIONNEMENT. INTRODUCTION QUELLE EN EST L’UTILITÉ? C’est un excellent outil d’entretien de nos ordinateurs. Gratuit, sur Internet.
Développement d’applications Web
Transcription de la présentation:

PHP 5° PARTIE : LES COOKIES Introduction Les cookies et PHP Restrictions La fonction setcookie() Exemples simples Travaux pratiques © BTS IRIS 2003 [tv]

1 . Introduction Un cookie (parfois appelé témoin) est une petite pièce d'information que les scripts peuvent stocker sur une machine côté client. Un cookie peut être créé sur la machine d'un utilisateur en envoyant un en-tête HTTP contenant les données au format suivant :   Set-Cookie: NOM=VALEUR; [expires=DATE;] [path=CHEMIN;] [domain=NOM_DOMAINE;] [secure] Cet en-tête conduit à la création d'un cookie appelé NOM avec la valeur VALEUR. Tous les autres paramètres sont optionnels. Lorsqu'un navigateur se connecte sur une URL, il commence par rechercher et examiner les cookies stockés localement. S'il détecte des cookies affectés à l'URL avec laquelle est établie la connexion, il les envoie en retour au serveur. Les cookies sont un mécanisme d'enregistrement d'informations sur le client, et de lecture de ces informations.

2 . Les cookies et PHP PHP supporte les cookies de manière transparente. Ce système permet notamment d'authentifier et de suivre les visiteurs. Vous pouvez envoyer un cookie avec la commande setcookie() ou manuellement avec la commande header() et la syntaxe donné plus haut.   Les cookies font partie de l'en-tête HTTP, ce qui impose que setcookie()soit appelée avant tout affichage de texte. Ce sont les mêmes limitations que pour header(). Tous les cookies qui sont envoyés au client seront automatiquement retournés au script PHP, et transformés en variables, exactement comme pour GET et POST. Si vous souhaitez affecter plusieurs valeurs à un seul cookie, ajoutez[] au nom du cookie.

3 . Restrictions Les cookies sont des fichiers que le serveur écrit sur l'ordinateur client et qui permettent à un script de sauvegarder des variables liées à l'utilisateur.   Plusieurs risques sont liés à l'utilisation des cookies : Le client peut refuser les cookies (A chaque visite vous risquez de lui dire "Bonjour, c'est la première fois que vous visitez ce site"...) Le client peut avoir effacé les cookies, d'un jour à l'autre vous perdez les informations Le client peut utiliser un navigateur qui n’accepte pas les cookies (situation très rare actuellement)

4 . Fonction setcookie() L'envoie du cookie se fait par la fonction :   int setcookie(string name, string value, int expire, string path, string domain, int secure); Les paramètres de la fonction setcookie() : name est le nom du cookie, c'est une chaîne de caractères privée de ":","," et " ". value est la valeur du cookie expire est la date d'expiration du cookie (retourné par time ou mktime), une fois la date atteinte le cookie est supprimé ou invalidé, s'il n'est pas spécifié, le cookie expire à la fin de la session. path est le répertoire dans lequel le cookie est valide. Les sous répertoires sont également acceptés. domain est le domaine pour lequel le cookie est associé (ex: www.tvtsii.net !) secure indique que le cookie ne doit être transmis que par une connexion sécurisée HTTPS Remarques : Seul le paramètre name est obligatoire. S'il n'y a que name de défini alors ce cookie est supprimé.

5 . Exemple simple (I) <?php // fichier : cookie.php define(EXP_HR, 3600); // Délai d'expiration : une heure $compte = "tv"; // un compte fictif setcookie("compte", $compte, time() + EXP_HR); // envoie du cookie echo "<a href=\"suite.php\">suite.php</a>"; ?>   <?php // fichier : suite.php # Le cookie est-il défini ? isset($_COOKIE["compte"]) or die("Le cookie n'est pas défini"); // on récupère le cookie // $cookie = $HTTP_COOKIE_VARS["compte"]; // anciennement $cookie = $_COOKIE['compte']; # Affichage du contenu du cookie echo "<PRE>\n". var_dump($cookie) ."<br>Ou alors : $compte<br />"; echo "</PRE>\n"; On peut aussi essayer avec un phpinfo().

5 . Exemple simple (II) <?php // fichier : cookies1.php setcookie( "cookie[3]", "cookie3" ); setcookie( "cookie[2]", "cookie2" ); setcookie( "cookie[1]", "cookie1" ); Header("Location: cookies2.php"); ?>   <?php // fichier : cookies2.php echo "Contenu du cookie :<br />"; if(isset($cookie)) { while(list($name,$value) = each($cookie)) echo "$name = $value<br />\n"; }

6 . Travaux pratiques Tester les deux exemples du cours et répondre aux questions suivantes : Où est-il stocké ? Quel est son nom et son extension ? Que contient-il ? Réaliser une application de gestion de panier utilisant les cookies. Ce script permet de gérer les produits suivants : Livre PHP : 21 euros Livre MySQL : 9 euros Livre HTML : 7 euros Livre Javascript : 12 euros Le premier script marche.php servira à mettre à 0 les données cookies et redirigera vers le script remplir.php. Le script remplir.php est l’interface principal de l’application qui permet les opérations suivantes : Ajouter un livre (lien vers remplir.php) Vider le panier (lien vers marche.php) Calculer le total (lien vers total.php) Ce script met à jour le contenu du panier si des livres sont ajoutés et vérifie si un panier existe (sinon il renvoie vers marche.php) Le script total.php lit le contenu du panier, calcule et affiche le coût total. Il affichera les liens suivants : Modifier son panier et Vider son panier. Remarque : attention, ce n'est pas une bonne idée pour un vrai panier car quelqu'un qui refuserait les cookies ne pourrait pas utiliser ce script.