Cours 9 Formulaires Web pour saisie de données dans une base de données relationnelle avec PHP (partie 1 de 2)



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

TP JAVASCRIPT OMI4 TP5 SRC

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

Module BD et sites WEB

Attaques applicatives

Création de formulaires interactifs

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

Formation. Module WEB 4.1. Support de cours

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

Formation Webmaster : Création de site Web Initiation + Approfondissement

Gestion des documents avec ALFRESCO

Bien programmer. en Java ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret.

SCI6052 Information documentaire numérique École de bibliothéconomie et des sciences de l information

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

MAÎTRISE DE L ENVIRONNEMENT WINDOWS VISTA

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin

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

CREATION WEB DYNAMIQUE

Comment accéder à d Internet Explorer

Devenez un véritable développeur web en 3 mois!

Création, analyse de questionnaires et d'entretiens pour Windows 2008, 7, 8 et MacOs 10

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Bureautique Initiation Excel-Powerpoint

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

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Pratique et administration des systèmes

Banque d images SVT. Créer et utiliser une banque d images avec Picasa 2. Version anglaise -Windows 98. Banque photo en SVT : page 1 /14

Sommaire. I.1 : Alimentation à partir d un fichier Access (.mdb)...2

Manuel du composant CKForms Version 1.3.2

Création et utilisation de formulaire pdf

Création WEB avec DreamweaverMX

Ouvrir le compte UQÀM

Rapports d activités et financiers par Internet. Manuel Utilisateur

Notes pour l utilisation d Expression Web

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

Contenu Microsoft Windows 8.1

Guide d implémentation. Réussir l intégration de Systempay

Solutions en ligne Guide de l utilisateur

ADMINISTRATION TÉLÉSERVICES

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

PHP 5.4 Développez un site web dynamique et interactif

Groupe Eyrolles, 2003, ISBN : X

Guide de l utilisateur du Centre de gestion des licences en volume LICENCES EN VOLUME MICROSOFT

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

Documentation Liste des changements apportés

Utiliser un CMS: Wordpress

Chapitre 1. Prise en main

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

Évaluation des compétences. Identification du contenu des évaluations. Septembre 2014

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

Module pour la solution e-commerce Magento

Complaints Manager 4/06/2015 Page 1 Arpaweb 2015

SYSTÈMES D INFORMATIONS

Ministère de l Éducation Guide de l utilisateur de l Initiative pilote des écoles vertes

Formulaire pour envoyer un mail

Guide d utilisation. Version 1.1

Styler un document sous OpenOffice 4.0

Soyez accessible. Manuel d utilisation du CMS

MEGA ITSM Accelerator. Guide de démarrage

Formulaires et Compteurs

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

Guide Utilisateur MANTIS. Sommaire. Objet du document :

Manuel d utilisation du site web de l ONRN

Retour table des matières

LIMESURVEY. LimeSurvey est une application permettant de créer des questionnaires d enquête en ligne et d en suivre le dépouillement.

S y m M a i l i n g. S o l u t i o n d e - m a i l i n g. SymMailing est un outil professionnel de création et de gestion de campagnes d ing.

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

MANUEL DE L UTILISATEUR

Thème : Gestion commerciale

SP1 : Intégration d'une vidéo dans une mardi 21/01/2014. page web, fonction du format vidéo et 3 mercredi 22/01/2014

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

Thème : Création, Hébergement et référencement d un site Web

Guide d utilisation de «Partages Privés»

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

KIELA CONSULTING. Microsoft Office Open Office Windows - Internet. Formation sur mesure

Formation : WEbMaster

HTML, CSS, JS et CGI. Elanore Elessar Dimar

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

2 LES BASES DU HTML 19 Qu est-ce que le HTML? 20 De quand date le HTML? 20 Écrire son propre code HTML 22

Normes techniques 2011

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

KAJOUT WASSIM INTERNET INFORMATION SERVICES (IIS) 01/03/2013. Compte-rendu sur ISS KAJOUT Wassim

SOMMAIRE. Présentation assistée sur ordinateur. Collège F.Rabelais 1/10

Projet en nouvelles technologies de l information et de la communication

Formation Découverte du Web

Formation Website Watcher

Optimiser pour les appareils mobiles

Le logiciel de création de site internet IZISPOT est un outil très puissant et qui est assez simple après quelques temps d utilisation.

PLATEFORME DE GESTION DE CONGRÈS SCIENTIFIQUES. h tt p : / / w w w. s c i e n c e s c o n f. o rg

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

Campagnes d ings v.1.6

Dossier I Découverte de Base d Open Office

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

Guide Reseller Onbile

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

Access 2007 FF Access FR FR Base

:...2 I.6. :... 2 I.7. :... 2 I.8. :...3 I.9. :... 3 I.10. :... 3 II. 4 II.1.

Sessions en ligne - QuestionPoint

Transcription:

École de bibliothéconomie et des sciences de l information SCI6306 Bases de données documentaires Cours 9 Formulaires Web pour saisie de données dans une base de données relationnelle avec PHP (partie 1 de 2) Faculté des arts et des sciences 6 novembre 2015 Christine Dufour, 2015 1/ 15

SCI6306 2/ 15 Au programme aujourd hui Intégration Web d une base de données MySQL : scénario général Intégration Web d une base de données MySQL pour l enregistrement de données Partie 1 : Préparation du formulaire Web Présentation du Volet C du projet de session Travail en laboratoire : Exercice et Volet C

SCI6306 3/ 15 Bases de données sur le Web Scénario général Accès à une base de données via un navigateur Web pour saisir des données et/ou afficher des données Serveur Web Système permettant l interaction dynamique (i.e. en temps réel) avec le contenu de la base de données Côté Serveur Côté Client

SCI6306 4/ 15 Bases de données sur le Web Enregistrement de données Titre de la page Web Champ 1 Champ 2 Champ 3 Choix 1 Choix 2 Choix 3 soumettre Formulaire HTML saisie des données validation action Instructions en PHP pour enregistrer les données dans un nouvel enregistrement (requête INSERT INTO) ou dans un enregistrement existant (UPDATE) Instructions PHP enregistrement dans la bd Données structurées en champs dans une(des) table(s) Base de données stockage des données (doit être accessible en écriture)

SCI6306 5/ 15 Bases de données sur le Web Étapes pour l enregistrement (Partie 1) 1. Préparation de la base de données MySQL 2. Préparation du formulaire HTML (Partie 2) 3. Définition du code PHP pour enregistrer les réponses dans la base de données

SCI6306 6/ 15 Étape 1 : Bases de données MySQL Préparation de la base de données Modélisation pour définir le schéma relationnel correspondant à la réalité à décrire Diagramme Entités-Relations Définition de la structure des tables Définition des conditions additionnelles Exemples de contenu valides Volet A du projet de session Implantation via phpmyadmin de la structure de tables définie Principale étape : création des tables, index et relations Volet B du projet de session Peut y avoir une étape d importation de données s il s agit, par exemple, d une migration à partir d un ancien système

Volet C du projet 6 novembre 2015 de session Principe général SCI6306 7/ 15 Exemple http://www.gin- ebsi.umontreal.ca/sci6306a15- eq01/formulaire.htm formulaire formulaire.htm <form method="post" action="merci.php"> <input type="radio" name="q1" value="vanille" />Vanille [ ] <input type="submit" /> </form> bouton pour soumettre le formulaire action déclenchée lorsque que le formulaire est soumis contrôles pour la saisie des données; chaque contrôle a un nom que l on peut réutiliser par la suite pour utiliser les données qu il contient merci.php <ul> </ul> Clic! <li><strong>crème glacée</strong> : <?php echo $_POST['q1'];?></li> Instruction pour afficher les données des contrôles du formulaire qui a appelé cette page. À noter : Les instructions en PHP intercalées dans le HTML sont encadrées par <?php et?> «echo» est la commande en PHP pour afficher quelque chose à l écran $_POST['q1'] permet d aller chercher la valeur d un des contrôles (méthode POST) PRINCIPE GÉNÉRAL L idée de base est qu un formulaire HTML contient différents contrôles (boîtes de saisie, menus déroulants, etc.) permettant à l usager de saisir des données. Le bouton pour soumettre le formulaire déclenche l action indiquée pour le formulaire, comme, par exemple, l ouverture d une nouvelle page. Il est possible, dans cette nouvelle page, d avoir accès aux valeurs contenues dans les contrôles pour, par exemple, les afficher ou les enregistrer dans une base de données.

SCI6306 8/ 15 Structure générale <form id="nom du formulaire" method="post" action="action"> Action : par exemple, en inscrivant le nom d un fichier, il y aura une redirection vers ce dernier <!-- Éléments du formulaire (questions) --> <p><textarea rows="10" cols="60" name="comment">s.v.p. faites nous part de tout commentaire en lien avec un aspect ou l autre de notre bibliothèque.</textarea></p> [ ] <!-- Bouton pour la soumission du formulaire; exécute l'action définie pour le formulaire --> <p><input name="soumission_form" type="submit" value="titre du bouton" /></p> </form> Titre du bouton : texte qui sera inscrit sur le bouton

SCI6306 9/ 15 Types d éléments (contrôles) Question à choix multiples i.e. plusieurs choix offerts, une seule sélection possible (radio ou select) Question à réponses multiples i.e. plusieurs choix offerts, possibilité d en sélectionner plus d un (checkbox ou select) Question ouverte Réponse courte (text) Réponse longue (textarea) Voir le glossaire des balises HTML pour le cours (http://cours.ebsi.umontreal.ca/glossaireweb/index.php?cours=sci6306).

SCI6306 10 / 15 Types de contrôles vs Types de données Contrôles de type «question à choix multiples» & «question à réponses multiples» E.g., si choix = «1980» : Champ numérique E.g., si choix = «français» : Champ texte Contrôle de type «boîte de texte court» (max. 255 caractères) E.g., si réponse saisie est «Bibliothécaire» : Champ texte E.g., si réponse saisie est «20» : Champ numérique Contrôle de type «boîte de texte longue» : Champ texte Exemple http://www.gin-ebsi.umontreal.ca/sci6306a15-eq01/formulaire.htm

SCI6306 11 / 15 Validation de la saisie [1/3] Nouveaux types de contrôle dans HTML5 permettant de valider le contenu (par exemple, email, number, url) Ne sont toutefois pas supportés par tous les navigateurs (http://www.w3schools.com/html/html_form_input_types.asp) Autre solution : validation avec javascript (fonctionnelle en autant que le javascript est activé)

SCI6306 12 / 15 Validation de la saisie [2/3] Javascript Form Validation (http://www.javascript-coder.com/htmlform/javascript-form-validation.phtml) Bibliothèque javascript prédéfinie pour la validation Processus Installation au même niveau que les pages contenant les formulaires du fichier gen_validatorv4.js Déclaration de cette classe javascript dans l entête de la page Web : <script src="gen_validatorv4.js" type="text/javascript"></script> Ajout, après la fermeture du formulaire, des instructions de validation à l intérieur d une balise <script> <script type="text/javascript"> var frmvalidator = new Validator("nom_du_formulaire"); frmvalidator.enablemsgstogether(); [instructions de validation (voir acétate suivante)] </script>

SCI6306 13 / 15 Validation de la saisie [3/3] Javascript Form Validation : Exemples de validation Champ requis : frmvalidator.addvalidation("champ","req","message d erreur"); Champ courriel : frmvalidator.addvalidation("champ","email","message d erreur"); Menu déroulant requis : frmvalidator.addvalidation("champ","dontselect=valeurpardéfaut","mes sage d erreur"); Champ numérique : frmvalidator.addvalidation("champ","numeric","message d erreur"); Champ avec masque (utilise les expressions régulières) : frmvalidator.addvalidation("code postal","regexp=[a-z][0-9][a-z] [0-9][A-Z][0-9]","message d erreur"); L ensemble des validations possibles est disponible à l URL http://www.javascript-coder.com/html-form/javascript-form-validation.phtml#descriptors

SCI6306 14 / 15 Autres considérations Il n est pas toujours possible de valider les données lors de la saisie, soit parce qu il n y a pas de «format typé» ou parce que de multiples formes sont acceptées (par exemple, pour des numéros de téléphone internationaux) En ce cas, il peut être utile de rappeler certaines règles d écriture, par exemple À même l interface, en les écrivant directement Via des infobulles, ce qui permet d éviter de surcharger l interface L attribut «title» peut être ajouté à toutes les balises. Son contenu apparaîtra comme une infobulle lorsque l on survolera la balise avec la souris.

SCI6306 15 / 15 Projet de session Volet C Objectifs Développer des pages Web pour faire de la saisie de données et de la visualisation de données Contexte Système Web existant à compléter Livrables Ensemble des fichiers constituant le système Web développé Base de données MySQL Travail en équipe, donc dans le compte partagé sur phpmyadmin ainsi que dans l espace commun sur GIN-EBSI