Formulaire HTML et PHP

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

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

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

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

PHP et les Bases de données - Généralités

Programmation Web. Madalina Croitoru IUT Montpellier

Introduction. Passage de sites statiques à des sites dynamiques

Techniques de Programmation pour Internet

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Stockage du fichier dans une table mysql:

Rapport de projet Site web pour une association

TP JAVASCRIPT OMI4 TP5 SRC

2 Formation utilisateur

Gilles.Roussel univ-mlv.fr HTTP/1.1 RFC 2068

Attaques de type. Brandon Petty

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

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

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

ALGORITHMIQUE ET PROGRAMMATION En C

Hébergement de site web Damien Nouvel

Guide d interfaçage SSO Connexion des ressources aux plates-formes de type Corrélyce. Sommaire. Titre du document

Web statique : client-serveur. PHP/MySQL: Sites dynamiques Formulaires et bases de données. Discussion HTTP. Caractéristiques du HTTP

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

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

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

Types MIME (2) Typage des ressources Internet. Les URI. Syntaxe dans les URI. Possibilité de spécifier un paramètre du sous-type

Sommaire Accès via un formulaire d'identification... 4 Accès en mode SSO... 5 Quels Identifiant / mot de passe utiliser?... 6

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

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs

Mise en place d un serveur Proxy sous Ubuntu / Debian

Démonstration de la mise en cache via HTML 5 sur iphone

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

HTML, CSS, JS et CGI. Elanore Elessar Dimar

Pratique et administration des systèmes

Mysql avec EasyPhp. 1 er mars 2006

Panel des technologies Web

API SMS CONSEIL HTTP V2.01. Sommaire. Documentation V1.0 au 21/05/2011


Formulaire pour envoyer un mail

PLUGINS Guide du Développeur STEPHANE FERRARI. P l u X m l 5.4

Module BD et sites WEB

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

HTML/CSS - Travaux Pratiques 2

Activité sur Meteor. Annexe 1 : notion de client-serveur et notion de base de données

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

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

L envoi d un formulaire par courriel. Configuration requise Mail Texte Mail HTML Check-list

Chapitre 2 Devine mon nombre!

Création de formulaires interactifs

HTTP. Technologies du Web. Programmation Web côté serveur. Mastère spécialisé Management et nouvelles technologies, 16 novembre 2009

Développement des Systèmes d Information

(structure des entêtes)

CREATION d UN SITE WEB (INTRODUCTION)

1 Position du problème

Séance d ED n 5 : HTML et JavaScript

A DESTINATION DES SERVICES TIERS. Editeurs d applications et ressources pédagogiques connectées à l ENT

Documentation CAS à destination des éditeurs

Outils de traitements de logs Apache

Aspects techniques : guide d interfaçage SSO

Installation locale de JOOMLA SEPIA

CREATION WEB DYNAMIQUE

Module http MMS AllMySMS.com Manuel d intégration

RÉALISATION D UN SITE DE RENCONTRE

25 mars. Tutoriel sur Laravel. Préparé par : Lydiane Beaulne-Bélisle. Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel.

Serveur d Applications Web : WebObjects

Initiation à la programmation en Python

PLATE-FORMES LIBRES *AMP CYBER PAIEMENT / CYBER PLUS PAIEMENT GUIDE DE MIGRATION FACILE ET EN UNE HEURE PLATE-FORME SYSTEMPAY

Programmer en JAVA. par Tama

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

PHP 5.4 Développez un site web dynamique et interactif

Formation : WEbMaster

Initiation à html et à la création d'un site web

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Programmation Web TP1 - HTML

Application web de gestion de comptes en banques

GOOGLE ANALYTICS. Ajout du code de suivi sur PowerBoutique. Ajout du code de suivi Google Analytics. Page 1 / 7 TUTO / GOOGLE ANALYTICS

PHP 5. La base de données MySql. A. Belaïd 1

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Programmation Web. Introduction

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Formulaires et Compteurs

équipement radio Procédure

Guide d implémentation Interface avec la plateforme de paiement

PDO : PHP Data Object 1/13

Cours Informatique Master STEP

Projet de programmation (IK3) : TP n 1 Correction

DOM - Document Object Model

Introduction au langage C

Démarrer avec Ajax et le php: exemple d'application

Présentation du Framework BootstrapTwitter

INFRASTRUCTURES TECHNOLOGIQUES POUR LE COMMERCE ELECTRONIQUE. Cours CNAM NFE102. Cours offerts par Luc Cantelaube

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Les services usuels de l Internet

Sana Sellami. Licence Professionnelle SIL

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.

Attaques applicatives

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

Transcription:

Formulaire HTML et PHP Partie 1 Les langages du Web Vincent Bouvier vincent.bouvier@kware.fr

HTML - Les formulaires Un formulaire permet à l'utilisateur d'envoyer des données au serveur Un formulaire commence toujours par le TAG <FORM>; Il est préférable de ne pas imbriquer les TAG <FORM>; 2

Les formulaires les attributs du TAG <FORM>: name: le nom du formulaire; action: la page vers laquelle seront envoyées les données; method: GET ou POST enctype="multipart/form-data": Uniquement si le formulaire contient un envoi de fichier; 3

Les formulaires Il existe plusieurs éléments de formulaire: Les <INPUT> Les <SELECT> et <OPTION> Les <TEXTAREA> Les <LABEL> Les <BUTTON> 4

Les Inputs 5

Les Inputs Les attributs du tag <INPUT> Type: text, password, radio, checkbox, submit Name: le nom du champ (doit être unique au sein du même formulaire sauf pour les radio!) Value: la valeur du champ Placeholder: Legende (text uniquement! ) Checked: uniquement pour les checkbox et les radio 6

Les Inputs <form> <input name="text1" type=text value="text" /> <input name="password1" type=password value="text" /> <input name="check_1" type=checkbox /> checkbox1 <input name="check_2" type=checkbox checked /> checkbox2 <input name="gender" type=radio checked/> male <input name="gender" type=radio /> female <input type="submit" /> </form> 7

Les bases de PHP

PHP - Définitions PHP : Personal Home Page / P Hypertext Preprocessor Langage script qui est interprété coté serveur Permet: de collecter des données d'un formulaire d interagir avec une base de données de générer du contenu dynamique de gérer les cookies 9

PHP - Fonctionnement index.php www.monsiteweb.fr Client Serveur Interpréteur PHP 10

Serveur.AMP AMP: Apache MySQL PHP Une solution de serveur web qui inclut les 3 composantes les plus utilisées du Web: Apache: Serveur Web MySQL: Serveur de base de données PHP: Un interpréteur de code PHP 11

Apache Php Client MySQL 12

PHP et HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>titre</title> </head> <body> <?php echo "Hello World! ;?> </body> </html>

PHP et HTML <?php echo "<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>titre</title> </head> <body> Hello World! </body> </html>";?>

PHP et HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>titre</title> </head> <body> <?php $firstname = "Vince"; echo "Hello $firstname! ;?> </body> </html>

PHP et HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>titre</title> </head> <body> <?php $class = "menu-item";?> <div class=<?php echo "'$class'";?> > Hello World </div> </body> </html>

PHP - Les variables Déclaration d'une variable à l'aide du symbole $ suivi du nom de la variable (e.g., $user) Les variables ne sont pas typées Une variable peut contenir: Rigueur des types de bases (integer, boolean, double, float, string) des tableaux (array) des table de hachage (hashtable) Les variables ne vivent que le temps d une page! 17

PHP - Insérer du code PHP Pour coder en PHP il est impératif que l'extension du fichier soit.php <?php echo "Hello World! ;?> 18

PHP - Les variables Déclaration d'une variable contenant un type de base: $year = 2012; $pi = 3.14; $name = "Vincent"; Déclaration d'une variable contenant un tableau ou une hashtable: $table = array(); 19

PHP - LES EXPRESSIONS BOOLÉENES Une expression booléenne renvoi toujours soit VRAI ou FAUX. Pour une expression booléene il faut utiliser == plutôt que seulement =, car ce dernier permet seulement d'attributer une valeur à une variable Les signes <= et >= doivent forcément être mis dans cet ordre Pour savoir si une variable est initialisée, utiliser la fonction: isset Pour savoir si une variable contient une chaine de caractère vide, utiliser la fonction: empty Pour savoir si la variable est une table utiliser la fonction: is_array $a == 0; $a < 0; $a > 0; $a <= 0; $a >= 0; $a == "test"; isset($a); empty($a); is_array($a); 20

PHP - LES CONDITIONS Le mot clé if permet de commencer une déclaration de condition; La condition doit être une expression booléene; Les mots clés elseif ou else permettent de continuer une déclaration de condition; Le code entre {} est exécuter seulement si la condition est vrai if($a == 0){ //do something } elseif($a == 1){ //do something else } else{ //do something else } 21

PHP - Tableaux et HashTable Structure interne d'un tableau: Les clés sont des nombres entiers (Integer) La première clé est 0 Les clés sont ordonnées À une clé correspond une variable (qui peut aussi être une autre table) Clés 0 1 2 n Valeurs valeur1 valeur2 valeur3 valeurn 22

PHP - Tableaux et HashTable Remplir un tableau $table = array(); $text = "Text"; $nombre = 3; array_push($table, $text); $table[1] = $nombre; Parcourir un tableau for($i=0 ; $i < sizeof($table) ; $i++ ) { echo $table[$i]; } foreach($table as $value) { echo $value; } 23

PHP - Tableaux et HashTable Structure interne d'une hashtable: Les clés sont des chaines de caractères (String) Les clés ne sont pas ordonnées À une clé correspond une variable (qui peut aussi être une autre table) Clés couleur marque modèle Valeurs gris suzuki swift 24

PHP - Tableaux et HashTable Remplir une hashtable $voiture = array(); $voiture["couleur"] = "gris"; $voiture["marque"] = "suzuki"; $voiture["modèle"] = "swift"; Parcourir une hashtable foreach($table as $key => $value) { echo $key." ".$value; } 25

PHP - LES BOUCLES FOR Le mot clé for permet de commencer une déclaration de boucle Les paramètres sont séparés par un ; Le premier paramètre est l'initialisation Le second la condition pour continuer for($i=0 ; $i < 5 ; $i++ ) { if($i == 2){ continue; } elseif($i == 4){ break; } } Le troisième une action itérative 26

PHP - LES BOUCLES Le mot clé break permet sortir d'une boucle à tout moment; Le mot clé continue permet de revenir en début de boucle. L'action itérative est tout de même exécutée for($i=0 ; $i < 5 ; $i++ ) { if($i == 2){ continue; } elseif($i == 4){ break; } } 27

PHP - LES BOUCLES ForEach Le mot clé foreach permet de commencer une déclaration de boucle sur une table Pour un tableau seuls deux paramètres suffisent Pour une hashtable trois paramètres sont nécéssaires foreach($hashtable as $key=>$value) { } foreach($array as $value) { } 28

PHP - LES BOUCLES WHILE Le mot clé while permet de commencer une déclaration de boucle Cette boucle prend seulement une condition d'arrêt en paramètre Tant que la condition d'arrêt est vraie, la boucle continue $a = 0; while($a<8) { $a++; } Au boucle infinie! 29

PHP et les Formulaires

Exemple: Authentification Identifiant ou mot de passe erroné! Scripts login.php SI index.php home.php index.php?error=identifiant ou mot de passe erroné! 31

HTML - L envoi des données Méthode GET ou POST? Méthode GET Valeur par défaut Ne requiert pas l'utilisation de php pour exploiter les données Les variables sont passées par le biais de la barre d'adresse Méthode POST Préférée pour les données sensible (mot de passe, paiement en ligne...) Requiert l'utilisation du PHP pour accéder aux données Les variables sont passées dans l'entête HTTP Utilisée pour l'envoi de fichiers 32

PHP - Récupération des données Pour récupérer les informations envoyées par un formulaire il faut utiliser les variables $_POST ou $_GET suivant la méthode utilisée dans le formulaire Ces variables s'utilisent comme une HashTable, où la clé correspond à l'attribut name de l'élément du formulaire La valeur associée correspond quant à elle à la valeur entrée par l'utilisateur 33

PHP - Les redirections Certaine fois, il est nécessaire de rediriger l'utilisateur sur une autre page: Exécution d'un script Page d erreur Attention aucun texte HTML ne doit être afficher pour que cela fonctionne. header("location:../index.php"); exit(); 34

PHP - Envoi de données sans formulaire Utilisation de la méthode GET manuellement en passant des variables pendant une redirection. index.php?mavariable=1&monautrevariable=2 header("location:../index.php?mavariable=1&monautrevariable=2 ); exit(); 35

PHP - Envoi de données sans formulaire Utilisation de urlencode($str) lorsque la valeur d une variable est une chaine de caractères. $montext= Hello"; header("location:../index.php? mavariable=.urlencode($montext). &monautrevariable=2 ); exit(); 36

Les Formulaires DEMO 37