Gestion et suivi d informations

Documents pareils
C.M. 1 & 2 : Prise en main de Linux

Dans l'article précédent, vous avez appris

Introduction à Linux (pour le HPC) «Linux 101» Présentation :

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Stockage du fichier dans une table mysql:

Mise en place d un serveur Proxy sous Ubuntu / Debian

Mise en oeuvre d un intranet à partir de logiciels Open Source avec intégration des certificats numériques et login unique

Déploiement des manuels numériques sur tablette. Mode d emploi intégrateur / administrateur

Accès distant Freebox v6 Configuration

Installation / Sauvegarde Restauration / Mise à jour

SYSTÈMES D INFORMATIONS

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

La programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2)

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Unix/Linux I. 1 ere année DUT. Université marne la vallée

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

OUAPI Guide d installation Outil d administration de parc informatique. Documentation d installation et de paramétrage

TP JAVASCRIPT OMI4 TP5 SRC

Un exemple d'authentification sécurisée utilisant les outils du Web : CAS. P-F. Bonnefoi

Les solutions de paiement CyberMUT (Crédit Mutuel) et CIC. Qui contacter pour commencer la mise en place d une configuration de test?

Module BD et sites WEB

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

Bon ben voilà c est fait!

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Installation d un manuel numérique 2.0

Sécurité des applications web. Daniel Boteanu

Transfert de fichiers (ftp) avec dreamweaver cs5 hébergement et nom de domaine. MC Benveniste

Théorie : internet, comment ça marche?

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Mise à jour : Octobre 2011

WorkflowGen 6.0 Guide de mise à jour

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

L3 informatique TP n o 2 : Les applications réseau

GUIDE PRATIQUE déplacements professionnels temporaires en France et à l étranger

Techniques de Programmation pour Internet

Serveur de partage de documents. Étude et proposition d'une solution afin de mettre en place un serveur de partage de documents.

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Formulaire pour envoyer un mail

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

Configurer le Serveur avec une adresse IP Statique (INTERFACE :FastEthernet) : et un masque

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

Failles XSS : Principes, Catégories Démonstrations, Contre mesures

Manuel d'installation de GESLAB Client Lourd

Guide Utilisateur Easy Share

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.

FTP : File TRansfer Protocol => permets d envoyer des gros fichiers sur un serveur (ou de télécharger depuis le serveur)

Les services usuels de l Internet

CREATION WEB DYNAMIQUE

Déploiement de SAS Foundation

PHP CLÉS EN MAIN. 76 scripts efficaces pour enrichir vos sites web. par William Steinmetz et Brian Ward

Hébergement WeboCube. Un système performant et sécurisé. Hébergement géré par une équipe de techniciens

Réseaux et protocoles Damien Nouvel

CRÉER SON SITE INTERNET. Créer son site Internet. Méd de Roanne. FG 16/09/08

STID 2ème année : TP Web/PHP

Installation de Joomla avec Filezilla

TP HTTP. Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A

Diffuser un contenu sur Internet : notions de base... 13

USTL - Licence ST-A 1ère année Initiation à la programmation TP 1

Aperçu technique Projet «Internet à l école» (SAI)

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Galaxy est une plateforme de traitements (bio)informatiques accessible depuis l'url : (en précisant votre login et mot de passe LDAP «genotoul»).

Pratique et administration des systèmes

Programmation Web. Introduction

Spécifications techniques et fonctionnelles du multi-années pour les noms de domaine en.fr

Mise en route et support Envision 10 SQL server (Avril 2015) A l'intention de l'administrateur SQL Server et de l administrateur Envision

Information sur l accés sécurisé aux services Baer Online Monaco

Vulnérabilités et sécurisation des applications Web

Bases de données et Interfaçage Web

Programmation Web. Madalina Croitoru IUT Montpellier

Hébergement de site web Damien Nouvel

Chapitre 1 Windows Server

Serveurs de noms Protocoles HTTP et FTP

PHP. Performances. Audit et optimisation LAMP. Julien Pauli. Cyril Pierre de Geyer. Guillaume Plessis. Préface d Armel Fauveau

JRES 2005 : La mémorisation des mots de passe dans les navigateurs web modernes

Table des matières Avant-propos... V Scripting Windows, pour quoi faire?... 1 Dans quel contexte?

Le serveur communication unifiée IceWarp. Guide de mise à jour. Version 10. Février IceWarp France / DARNIS Informatique

Microsoft Hosted Exchange 2010 DOCUMENT D EXPLOITATION

En date du 11 décembre 2008

1. La plate-forme LAMP

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Atelier Le gestionnaire de fichier

Comment développer et intégrer un module à PhpMyLab?

Module 7 : Configuration du serveur WEB Apache

Guide Reseller Onbile

Manuel des logiciels de transferts de fichiers File Delivery Services

Tutoriel : Utilisation du serveur de calcul à distance de PSE

Introduction au Système d Exploitation Unix/Linux

1 Démarrage de Marionnet

Formation en Logiciels Libres. Fiche d inscription

Tutoriel Création d une source Cydia et compilation des packages sous Linux

Solution Pro pour l Envoi de SMS direct opérateurs PUSH SMV MODE HTTP. Documentation Technique

Pharmed. gestion de pharmacie hospitalière. Installation / déploiement

Serveur Subversion Debian GNU/Linux

Espace pro. Installation des composants avec Firefox. Pour. Windows XP Vista en 32 et 64 bits Windows 7 en 32 et 64 bits

Transcription:

Gestion et suivi d informations Info 43 - Programmation WEB et Bases de Données Luiz Angelo Steffenel Université de Reims Champagne-Ardenne luiz-angelo.steffenel@univ-reims.fr http://cosy.univ-reims.fr/~lsteffenel Luiz Angelo Steffenel Gestion et suivi d informations 1/ 50

Plan 1 2 Cookies en PHP 3 Fonctions associées au session Luiz Angelo Steffenel Gestion et suivi d informations 2/ 50

en PHP manipulation de fichiers et répertoires pas d opérations sur les contenus Gestion du contenu des fichiers lecture / écriture des contenus de fichier Problèmes de droits d accès Luiz Angelo Steffenel Gestion et suivi d informations 3/ 50

Plan 1 2 Cookies en PHP 3 Fonctions associées au session Luiz Angelo Steffenel Gestion et suivi d informations 4/ 50

Manipulation du système Opérations opération sur les répertoires opérations sur les fichiers opérations standard de gestion de système de fichier cp, mv rm touch... Luiz Angelo Steffenel Gestion et suivi d informations 5/ 50

Quelques opérations sur les répertoires Création b o o l mkdir ( s t r i n g pathname [, i n t mode [, b o o l r e c u r s i v e [, r e s o u r c e c o n t e x t ] ] ] ) Suppression b o o l rmdir ( s t r i n g dirname [, r e s o u r c e c o n t e x t ] ) Renommage b o o l rename ( s t r i n g oldname, s t r i n g newname [, r e s o u r c e c o n t e x t ] ) Luiz Angelo Steffenel Gestion et suivi d informations 6/ 50

Parcours des répertoires Opérations ouverture du répertoire r e s o u r c e opendir ( s t r i n g path [, r e s o u r c e c o n t e x t ] ) lecture des différentes entrées s t r i n g r e a d d i r ( r e s o u r c e d i r _ h a n d l e ) retour au début du répertoire v o i d r e w i n d d i r ( r e s o u r c e d i r _ h a n d l e ) fermeture du répertoire v o i d c l o s e d i r ( r e s o u r c e d i r _ h a n d l e ) Luiz Angelo Steffenel Gestion et suivi d informations 7/ 50

Affichage des fichiers du répertoire courant <?php $ d i r = ". " ; i f ( $dh = opendir ( $ d i r ) ) { w h i l e ( ( $ f i l e = r e a d d i r ( $dh ) )!== f a l s e ) { echo "<p> f i c h i e r : $ f i l e </p>" ; } c l o s e d i r ( $dh ) ; }?> Luiz Angelo Steffenel Gestion et suivi d informations 8/ 50

Quelques opérations sur les fichiers Copie b o o l copy ( s t r i n g source, s t r i n g d e s t ) Renommage b o o l rename ( s t r i n g oldname, s t r i n g newname [, r e s o u r c e c o n t e x t ] ) Destruction b o o l u n l i n k ( s t r i n g f i l e n a m e [, r e s o u r c e c o n t e x t ] ) Luiz Angelo Steffenel Gestion et suivi d informations 9/ 50

Test sur les fichiers / répertoires Eléments de test droits des fichiers b o o l is_executable ( s t r i n g f i l e n a m e ) b o o l i s _ r e a d a b l e ( s t r i n g f i l e n a m e ) b o o l is_writable ( s t r i n g f i l e n a m e ) type b o o l is_dir ( s t r i n g f i l e n a m e ) b o o l i s _ f i l e ( s t r i n g f i l e n a m e ) existence b o o l f i l e _ e x i s t s ( s t r i n g f i l e n a m e ) Luiz Angelo Steffenel Gestion et suivi d informations 10/ 50

Plan 1 2 Cookies en PHP 3 Fonctions associées au session Luiz Angelo Steffenel Gestion et suivi d informations 11/ 50

Accès au contenu Lecture lecture avec ouverture et fermeture lecture directe Ecriture écriture avec ouverture et fermeture Modification lecture et écriture Luiz Angelo Steffenel Gestion et suivi d informations 12/ 50

Ouverture Ouverture de fichier ouverture de fichier en fonction de son utilisation r e s o u r c e fopen ( s t r i n g f i l e n a m e, s t r i n g mode [, b o o l use_include_path [, r e s o u r c e z c o n t e x t ] ] ) modes d ouverture r lecture seule, positionnement au début r+ lecture/écriture, positionnement au début w écriture seule, positionnement au début, destruction du fichier r+ lecture/écriture, positionnement au début, destruction du fichier a écriture seule, positionnement à la fin a+ lecture/écriture, positionnement à la fin fermeture b o o l f c l o s e ( r e s o u r c e h a n d l e ) Luiz Angelo Steffenel Gestion et suivi d informations 13/ 50

Lecture dans un fichier Méthodes de lecture lecture d un caractère s t r i n g f g e t c ( r e s o u r c e h a n d l e ) lecture d une chaîne de caractères s t r i n g f g e t s ( r e s o u r c e h a n d l e [, i n t l e n g t h ] ) Test test de fin de fichier b o o l f e o f ( r e s o u r c e h a n d l e ) Luiz Angelo Steffenel Gestion et suivi d informations 14/ 50

Exemple de lecture dans un fichier <html> <head></head> <body> <? $ f i c = f o p e n (" t o t o. t x t "," r " ) ; do{ $ l e c t=f g e t c ( $ f i c ) ; echo " $ l e c t " ; } w h i l e (! f e o f ( $ f i c ) ) ; f c l o s e ( $ f i c ) ; $ f i c = f o p e n (" t o t o. t x t "," r " ) ; do{ $ l e c t=f g e t s ( $ f i c ) ; echo " $ l e c t " ; } w h i l e (! f e o f ( $ f i c ) ) ; f c l o s e ( $ f i c ) ;?> </body> </html> Luiz Angelo Steffenel Gestion et suivi d informations 15/ 50

Ecriture dans un fichier Méthodes d écriture écriture d une chaîne i n t f w r i t e ( r e s o u r c e handle, s t r i n g s t r i n g [, i n t l e n g t h ] ) é c r i t u r e en mode b i n a i r e i n t f p u t s ( r e s o u r c e handle, s t r i n g s t r i n g [, i n t l e n g t h ] ) gestion du buffer b o o l f f l u s h ( r e s o u r c e h a n d l e ) Luiz Angelo Steffenel Gestion et suivi d informations 16/ 50

Exemple d écriture dans un fichier <html> <head> < t i t l e > E c r i t u r e dans un f i c h i e r </ t i t l e > </head> <body> <? $ f i c=f o p e n (" monfic. t x t ","w" ) ; f p u t s ( $ f i c, " j e f a i s un e s s a i \n " ) ; f c l o s e ( $ f i c ) ;?> </body> </html> Luiz Angelo Steffenel Gestion et suivi d informations 17/ 50

Méthodes alternatives de lecture Lecture complète d un fichier vers un tableau a r r a y f i l e ( s t r i n g f i l e n a m e [, i n t use_include_path [, r e s o u r c e c o n t e x t ] ] ) Présence des caractères de fin de ligne dans chaque case vers une chaîne s t r i n g f i l e _ g e t _ c o n t e n t s ( s t r i n g f i l e n a m e [, b o o l use_include_path [, r e s o u r c e c o n t e x t [, i n t o f f s e t [, i n t maxlen ] ] ] ] ) Luiz Angelo Steffenel Gestion et suivi d informations 18/ 50

Exemple de lecture alternative <html> <head></head> <body> <? $tab = f i l e (" msg. t x t " ) ; f o r e a c h ( $tab as $ l i g n e ){ echo "<p> $ l i g n e </p >"; }?> <p> </p> <? $ch = f i l e _ g e t _ c o n t e n t s (" msg. t x t " ) ; echo "<p> $ch </p>"; $ch1 = n l 2 b r ( $ch ) ; echo "<p> $ch1 </p>";?> </body> </html> Luiz Angelo Steffenel Gestion et suivi d informations 19/ 50

Ecriture alternative dans un fichier écriture directe d une donnée i n t f i l e _ p u t _ c o n t e n t s ( s t r i n g f i l e n a m e, mixed data [, i n t f l a g s [, r e s o u r c e c o n t e x t ] ] ) exemple <? $ch = " c e c i e s t un e s s a i \n c e c i e s t un e s s a i " ; f i l e _ p u t _ c o n t e n t s (" xxx. t x t ", $ch ) ;?> Luiz Angelo Steffenel Gestion et suivi d informations 20/ 50

Plan 1 2 Cookies en PHP 3 Fonctions associées au session Luiz Angelo Steffenel Gestion et suivi d informations 21/ 50

Upload? Principe émission volontaire d un fichier depuis le client vers le serveur choix du fichier sur le client (formulaire) chemin complet navigation dans le système de fichier émission au serveur sauvegarde dans un fichier temporaire sur le serveur déplacement du fichier dans le répertoire de destination Luiz Angelo Steffenel Gestion et suivi d informations 22/ 50

Configuration du serveur élements dans php.ini ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; R e s o u r c e L i m i t s ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;.... ; Maximum amount o f time each ; s c r i p t may spend p a r s i n g r e q u e s t data max_input_time = 60.... ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; F i l e Uploads ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; Whether to a l l o w HTTP f i l e u p l o a d s. f i l e _ u p l o a d s = On ; Temporary d i r e c t o r y f o r HTTP u p l o a d e d ; f i l e s ( w i l l use system d e f a u l t i f not s p e c i f i e d ). ; upload_tmp_dir = ; Maximum a l l o w e d s i z e f o r u p l o a d e d f i l e s. u p l o a d _ m a x _ f i l e s i z e = 2M Luiz Angelo Steffenel Gestion et suivi d informations 23/ 50

Accès aux informations Le tableau $_FILE accès côté serveur aux informations sur le fichier transmis tableau associatif à double entrée éléments accessibles $_FILES[ userfile ][ name ] nom du fichier sur le client $_FILES[ userfile ][ type ] type MIME du fichier (non vérifié!) $_FILES[ userfile ][ size ] taille en octets $_FILES[ userfile ][ tmp_name ] nom temporaire sur le serveur $_FILES[ userfile ][ error ] code d erreur Luiz Angelo Steffenel Gestion et suivi d informations 24/ 50

Fonctions associées Sécurité!! déplacement d un fichier téléchargé b o o l move_uploaded_file ( s t r i n g f i l e n a m e, s t r i n g d e s t i n a t i o n ) test de téléchargement pas la méthode POST b o o l i s _ u p l o a d e d _ f i l e ( s t r i n g f i l e n a m e ) Luiz Angelo Steffenel Gestion et suivi d informations 25/ 50

Erreurs et codes d erreurs Codes d erreurs 0 - UPLOAD_ERR_OK aucune erreur 1 - UPLOAD_ERR_INI_SIZE taille supérieure à celle précisée dans le fichier php.ini 2 - UPLOAD_ERR_FORM_SIZE taille supérieure à MAX_FILE_SIZE précisée dans le formulaire html 3 - UPLOAD_ERR_PARTIAL fichier partiellement téléchargé 4 - UPLOAD_ERR_NO_FILE aucun fichier téléchargé 6 - UPLOAD_ERR_NO_TMP_DIR dossier temporaire manquant 7 - UPLOAD_ERR_CANT_WRITE échec d écriture sur le disque Luiz Angelo Steffenel Gestion et suivi d informations 26/ 50

Formulaire côté client <form e n c t y p e=" m u l t i p a r t / form data " a c t i o n ="up. php" method="p o s t"> <i n p u t t y p e="h i d d e n " name="max_file_size" v a l u e ="300000" /> Envoyez ce f i c h i e r : <i n p u t name=" u s e r f i l e " t y p e=" f i l e " /> <i n p u t t y p e="submit " v a l u e="envoyer l e f i c h i e r " /> </form> Luiz Angelo Steffenel Gestion et suivi d informations 27/ 50

Script côté serveur $ u p l o a d f i l e = basename ( $_FILES [ u s e r f i l e ] [ name ] ) ; i f ( move_uploaded_file ( $_FILES [ u s e r f i l e ] [ tmp_name ], $ u p l o a d f i l e ) ) { echo " Le f i c h i e r v a l i d e e t mis en p l a c e " ; } e l s e { echo " e r r e u r!!! " ; } Luiz Angelo Steffenel Gestion et suivi d informations 28/ 50

Plan Cookies en PHP 1 2 Cookies en PHP 3 Fonctions associées au session Luiz Angelo Steffenel Gestion et suivi d informations 29/ 50

Cookies Cookies en PHP élément du protocole HTTP mécanisme d enregistrement et de lecture d informations (chaînes de caractères) sur le client limitation de la lecture aux cookies que l on a déposés Luiz Angelo Steffenel Gestion et suivi d informations 30/ 50

Constitution d un cookie Cookies en PHP Cookie name nom du cookie value valeur du cookie expire date d expiration du cookie (temps UNIX) path chemin sur le serveur sur lequel le cookie sera disponible domain domaine où le cookie est disponible secure dépose du cookie lors d une connexion sécurisée (https) Luiz Angelo Steffenel Gestion et suivi d informations 31/ 50

Plan Cookies en PHP 1 2 Cookies en PHP 3 Fonctions associées au session Luiz Angelo Steffenel Gestion et suivi d informations 32/ 50

Variables et fonctions Cookies en PHP Dépôt de cookies dépose avant toute génération de texte b o o l s e t c o o k i e ( s t r i n g name [, s t r i n g v a l u e [, i n t e x p i r e [, s t r i n g path [, s t r i n g domain [, b o o l s e c u r e ] ] ] ] ] ) Accès aux cookies utilisation du tableau $_COOKIE[] Luiz Angelo Steffenel Gestion et suivi d informations 33/ 50

Dépose d un cookie Cookies en PHP <? s e t c o o k i e (" moncookie ", " c e c i e s t ma v a l e u r ", time ( ) + 3 6 0 0 ) ;?> <html> <head></head> <body> <p> c o o k i e mis en p l a c e </p> </body> </html> Luiz Angelo Steffenel Gestion et suivi d informations 34/ 50

Lecture d un cookie Cookies en PHP <? $ v a l c o o k = $_COOKIE [ " moncookie " ] ;?> <html> <head> </head> <body> <p> l a v a l e u r du c o o k i e e s t : <? echo $ v a l c o o k ;?> </p> </body> </html> Luiz Angelo Steffenel Gestion et suivi d informations 35/ 50

Destruction et modification Cookies en PHP Opérations destruction : redépose avec une date de validité antérieure modification : redépose du cookie Luiz Angelo Steffenel Gestion et suivi d informations 36/ 50

Cas des cookies de session Cookies en PHP Cookie de session cookie dont la durée de vie est limité à l exécution du client (navigateur) Opération création : dépose sans date d expiration destruction : automatique lors de la fermeture du client (navigateur) Luiz Angelo Steffenel Gestion et suivi d informations 37/ 50

Plan Fonctions associées au session 1 2 Cookies en PHP 3 Fonctions associées au session Luiz Angelo Steffenel Gestion et suivi d informations 38/ 50

Session? Fonctions associées au session Principe moyen de transmettre des informations tout au long de la navigation association d un identificateur unique SID à chaque client association sur le serveur : SID zone de données nécessité de passer l identificateur de session SID de page en page Luiz Angelo Steffenel Gestion et suivi d informations 39/ 50

Configuration Fonctions associées au session ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; Module S e t t i n g s ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;... [ S e s s i o n ]... ; Whether to use c o o k i e s. s e s s i o n. u s e _ c o o k i e s = 1 ; This o p t i o n e n a b l e s a d m i n i s t r a t o r s to make t h e i r u s e r s ; i n v u l n e r a b l e to a t t a c k s which i n v o l v e p a s s i n g s e s s i o n i d s ; i n URLs ; d e f a u l t s to 0. s e s s i o n. use_only_cookies = 1 ; Name o f t h e s e s s i o n ( used as c o o k i e name ). s e s s i o n. name = PHPSESSID... ; Document e x p i r e s a f t e r n m i n u t e s. s e s s i o n. c a c h e _ e x p i r e = 180... Luiz Angelo Steffenel Gestion et suivi d informations 40/ 50

Transmission de l identificateur Fonctions associées au session Par des cookies dépôt sur le client d un cookie dont la valeur est l identificateur de session suivi de la session par récupération du cookie Par l URL création d une URL portant le numéro de session necéssité de mettre en place le SID pour chaque changement de page : lien formulaire Luiz Angelo Steffenel Gestion et suivi d informations 41/ 50

Plan Fonctions associées au session 1 2 Cookies en PHP 3 Fonctions associées au session Luiz Angelo Steffenel Gestion et suivi d informations 42/ 50

Création, suivi, destruction Fonctions associées au session Création / suivi création et suivi utilisent la fonction : b o o l s e s s i o n _ s t a r t ( v o i d ) doit être utilisé avant toute génération de texte / html Destruction destruction de la session b o o l s e s s i o n _ d e s t r o y ( v o i d ) ne détruit pas le cookie associé, s il existe Luiz Angelo Steffenel Gestion et suivi d informations 43/ 50

Fonctions associées au session Enregistrement de données dans la session Implicite utilisation du tableau $_SESSION $ v a l = 1 5 7 ; $_SESSION [ " v a l " ] = $ v a l ; $_SESSION [ " v a l 1 " ] = " t o t o " ; Explicite utilisation de b o o l s e s s i o n _ r e g i s t e r ( mixed name [, mixed... ] ) exemple $ v a r = " une c h a i n e " ; s e s s i o n _ r e g i s t e r (" v a r " ) ; Luiz Angelo Steffenel Gestion et suivi d informations 44/ 50

Accès aux données enregistrées Fonctions associées au session Implicite utilisation du tableau $_SESSION echo $_SESSION [ " v a l " ] ; $_SESSION [ " v a l " ] = 7 8 9 5 ; Luiz Angelo Steffenel Gestion et suivi d informations 45/ 50

Passage de l identificateur de session Fonctions associées au session Cas des liens utilisation de <?SID?> dans l adresse (href) <a h r e f ="t o t o. php<?sid?>"> mon l i e n </a> Cas des formulaires utilisation de <?SID?> action dans l adresse associée au champ <form name=" f " method="post" a c t i o n =" t r a i t. php<?sid?>">... </form> Luiz Angelo Steffenel Gestion et suivi d informations 46/ 50

Exemple Fonctions associées au session Formulaire login / pass <html> <head> </ head> <body> <form method="post" a c t i o n=" l o g. php"> <i n p u t type=" t e x t " name=" l o g i n "> <i n p u t type=" password " name=" password "> <i n p u t type=" submit " v a l u e="go"> </ form> </ body> </ html> Luiz Angelo Steffenel Gestion et suivi d informations 47/ 50

Exemple Fonctions associées au session Test d accès <? $ l o g i n = $_POST[ " l o g i n " ] ; $ p a s s = $_POST[ " password " ] ; $ f i c = f i l e ( ". / f i c h l o g. t x t " ) ; $ t r o u v e = 0 ; f o r ( $ i =0; $i <count ( $ f i c ) && $ t r o u v e == 0 ; $ i ++){ $ e n t r e e = e x p l o d e ( " ; ", $ f i c [ $ i ] ) ; i f ( strcmp ( $ e n t r e e [ 0 ], $ l o g i n ) == 0 && strcmp ( r t r i m ( $ e n t r e e [ 1 ] ), $ p a s s ) == 0){ $ t r o u v e = 1 ; } } i f ( $ t r o u v e == 0){ echo "<html> <body> <h1> E r r e u r </h1> </body> </html >"; e x i t ; } s e s s i o n _ s t a r t ( ) ; $_SESSION [ " l o g i n " ] = $ l o g i n ;?> Luiz Angelo Steffenel Gestion et suivi d informations 48/ 50

Fonctions associées au session <html> <head> < t i t l e > l o g. php </ t i t l e > </head> <body> <a h r e f =" s u i t e. php<?sid?>"> a l l e r v e r s l a s u i t e </a> </body> </html> Luiz Angelo Steffenel Gestion et suivi d informations 49/ 50

Exemple Fonctions associées au session Test d accès <? s e s s i o n _ s t a r t ( ) ; i f (! i s s e t ( $_SESSION [ " l o g i n " ] ) { echo "<html> <body> <h1> E r r e u r </h1> </body> </html >"; e x i t ; }?> <html> <head> < t i t l e > l o g. php </ t i t l e > </head> <body> <p> Bonjour </a> </body> </html> Luiz Angelo Steffenel Gestion et suivi d informations 50/ 50