M Algorithmique et PHP

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimension: px
Commencer à balayer dès la page:

Download "M Algorithmique et PHP"

Transcription

1 M Algorithmique et PHP David Annebicque TD : Accès aux base de données 1.1 Introduction Une base de données permet de stocker des données de manière durable, contrairement à une session ou un cookie qui ont une durée de vie. Une base de données se compose d une ou plusieurs tables, qui peuvent, ou non, avoir des liens entre-elles. Dans le cadre de la formation MMI nous utilisons une base de données de type MySQL (lire le cours de M2203). Ce TD vise à vous expliquer comment se connecte-t-on à une base de données, comment récupère-t-on des données, comment peut-on ajouter, modifier ou supprimer des données, en d autres termes, comme exécuter les requêtes MySQL grâce au PHP. Il existe plusieurs manière de se connecter à une base de données en PHP. Il y a des méthodes spécifiques en fonction du type de base de données utilisée (mysql ou mysqli par exemple pour une base de données MySQL). Mais il y a aussi des méthodes plus génériques. Nous utiliserons dans le cadre de ce semestre la méthode PDO : PHP Data Object. Cette méthode utilise le concept de programmation orienté objet que vous étudierez durant le semestre 3. Il est donc normal que vous ne compreniez pas précisément la notation ->. Sachez simplement qu elle permet d utiliser des fonctionnalités associées à la connexion à votre base de données. 1.2 Se connecter à une base de données Pour pouvoir se connecter à une base de données, quelque soit la méthode utilisée, vous devez disposer des 4 informations suivantes : User : Login de votre base de données (mmi16xxx) Password : Mot de passe pour accéder à votre base de données (4 caractères en MMI) 1

2 Serveur : Adresse où se trouve votre base de données (localhost) Nom de la base de données : Le nom de la base de données. (basemmi16xxx) Dans le cadre du DUT MMI le login et le mot de passe de la base de données sont identiques à vos accès pour votre FTP. Le serveur permet de donner l adresse de votre base de données, très souvent, la base de données étant sur le même serveur que votre serveur web, on indique localhost. Dans certain cas, on pourra indiquer une URL ou une adresse IP. 2 $bdd = new PDO('mysql:host=serveur;dbname=nom_de_la_BDD; charset=utf8', 'User', 'Password'); Listing 1: Phrase de connexion à une BDD MySQL Il faut bien sûr remplacer dans l instruction précédente le serveur, le nom de la BDD, le User et le Password par vos informations personnelles. 1.3 PHP: Définition de constantes La connexion à la base de données est potentiellement nécessaire sur beaucoup de fichiers de notre projet. En effet, il faut effectuer la connexion sur chaque nouvelle page où cela est nécessaire. La connexion n est pas permanente. Il faudra donc écrire l instruction ci-dessus autant de fois que nécessaire, et en cas de changement de base de données, il faudra modifier chacune des connexions avec les nouveaux paramètres. Ce qui va à l encontre de la logique de programmation et de non duplication des éléments. Une solution consiste donc à définir des constantes PHP. Une constante est une variable particulière qui ne peut pas varier pendant l exécution du script PHP. L intérêt va donc être de définir une constante pour chacun des 4 paramètres et ensuite utiliser cette constante quand cela sera nécessaire. De cette manière, il n y aura qu un seul endroit ou modifier les informations. La syntaxe est la suivante : L usage veut que le nom d une constante soit en majuscule. A noter qu une constante ne commence pas par un $. Dans notre cas, un fichier type de constante pourrait être : Ces éléments sont sauvegardés dans un fichier que l on peut appeler config.inc.php. Ce fichier contiendra toutes nos constantes. Il faut ensuite 2

3 2 define('nom_constante', 'valeur'); Listing 2: Déclaration d une constante en PHP 2 define('bdd_user', 'monlogin'); 3 define('bdd_pass', 'monpassword'); 4 define('bdd_serveur', 'localhost'); 5 define('bdd_bdd', 'basededonnees'); Listing 3: Exemple de fichier config.inc.php inclure ce fichier à chaque fois que l on va faire une connexion à notre base de données. Ce qui pourrait donner le code suivant : <?php 3 include('config.inc.php'); 4 $bdd = new PDO('mysql:host='.BDD_SERVEUR.';dbname='.BDD_BDD.'; 5 charset=utf8', BDD_USER, BDD_PASS); 6... Listing 4: Exemple de fichier 2 Récupérer des données 2.1 Exécuter une requête Explication des lignes : 1. Cette ligne permet d écrire la requête au format MySQL. Une requête est avant tout du texte! Il est donc possible de construire cette phrase en concaténant des variables. 3

4 2 $requete = 'SELECT * FROM table'; 3 $exe = $bdd->query($requete); Listing 5: Exécuter une requête 2. Cette ligne exécute la requête précédemment écrite. C est à ce moment là que le résultat de la requête est récupéré dans la variable $exe. Il n est techniquement pas nécessaire de passer par une variable intermédiaire pour écrire la requête SQL (la variable $requete). Cependant vous utiliserez TOUJOURS cette solution durant ce semestre. Il sera ainsi beaucoup plus facile de débuguer et comprendre ce qui se passe en affichant, dans le navigateur, la requête. 2.2 Afficher le résultat d une requête La variable $exe contient donc le résultat de notre requête. Ce résultat, si la requête a réussi, est un tableau composé des lignes de la base de données correspondant à la selection. Il faut donc parcourir ce tableau afin d afficher chacune des lignes. Il y a deux méthodes pour réaliser cela : Compter le nombre total d élément dans le tableau, et faire une boucle for Parcourir le tableau jusqu à ce qu il n y ait plus d éléments Parcourir avec une boucle for Explication des lignes ligne 1 : Écriture de notre requête dans une variable ligne 2 : Exécution de la requête pour récupérer les réponses ligne 4 : Comptage du nombre de réponse de la requête. On pourrait utiliser cette variable pour afficher le nombre de réponse à l utilisateur. ligne 6 : Déclaration d une boucle for qui va permettre de parcourir toutes les réponses ligne 8 : Cette ligne permet de récupérer une ligne parmi l ensemble des lignes du tableau. fetch signifiant va chercher. A chaque itération de la boucle, on va chercher la ligne suivante dans le tableau des réponses. La notation -> est une notation objet. Vous la comprendrez mieux lors du prochain semestre. 4

5 2 $requete = 'SELECT * FROM table'; 3 $exe = $db->query($requete); 4 5 $nbreponses = $exe->rowcount(); 6 7 for($i=0; $i<$nbresponses; $i++) 8 { 9 $ligne = $exe->fetch(); 10 echo '<p>'.$ligne['champ1'].' '.$ligne['champ2'].'</p>'; 11 } Listing 6: Parcourir avec une boucle for ligne 9 : On affiche les données. A noter que la variable $ligne est un tableau associatif dont la clé est le nom du champ de votre table Parcourir avec une boucle while 2 $requete = 'SELECT * FROM table'; 3 $exe = $db->query($requete); 4 5 while($ligne = $exe->fetch()) 6 { 7 echo '<p>'.$ligne['champ1'].' '.$ligne['champ2'].'</p>'; 8 } Listing 7: Parcourir avec une boucle while Explication des lignes ligne 1 : Écriture de notre requête dans une variable ligne 2 : Exécution de la requête pour récupérer les réponses ligne 4 :Déclaration d une boucle while. Cette boucle va s exécuter tant qu il y a des valeurs dans le tableau $exe, tant que le fetch arrive à aller chercher une ligne. ligne 6 : On affiche les données. A noter que la variable $ligne est un tableau associatif dont la clé est le nom du champ de votre table. 5

6 2.3 Les erreurs Une erreur classique, que vous rencontrerez ressemblera à : 1 Fatal error: Call to a member function fetch() on a 2 non-object in C:\wamp\www\tests\index.php on line 13 Listing 8: Message d erreur Cette erreur apparait sur la ligne du fetch, mais en fait elle signifie que la ligne récupérée (quelque soit la méthode utilisée) est vide (Null). La cause de cela est quasiment toujours le fait que votre requête comporte une erreur et qu elle renvoie un résultat vide. Affichez donc votre requête grâce à : 2 echo $req; Listing 9: Afficher la requête Copier/coller la réponse dans phpmyadmin, onglet SQL afin de tester la requête et obtenir un message d erreur plus précis. 3 Exercice 3.1 Ennoncé Structure de la table comics : Nom Type Commentaire id int clé primaire titre varchar(150) collection varchar(150) nbpages int 0 par défaut prix double 1. Créer une nouvelle table dans votre base de données que vous nommerez comics. Ajouter les champs du tableau précédent. 6

7 2. Récupérer le fichier comics.csv sur davidannebicque.fr. 3. Vérifiez l ordre des champs et importez les données dans votre table. 4. Préparez votre fichier config.inc.php avec vos constantes. 5. Écrire un fichier index.php qui va afficher le contenu de la table comics dans un tableau HTML. 6. Obtenir le résultat ci-dessous. 7

8 3.2 Questions Bonus 1. Ajouter le montant total de la collection en bas du tableau 2. Ajouter le prix moyen d un album en bas du tableau. 3. Écrire un fichier qui affiche de manière unique les collections présentes dans la table comics. 4 Insérer des données dans une table L insertion de données dans une table passe par une requête SQL de type : INSERT INTO table (liste des champs) VALUES (valeur des champs) Listing 10: Requête INSERT L ordre des champs doit être le même que l ordre des valeurs. On ne précise pas les champs de type auto incrémenté, car ils sont gérés automatiquement par la base de données. Afin de rendre cette requête dynamique les valeurs des champs proviennent d éléments issus de l utilisateur (remplissant d un formulaire, choix d article dans un panier,...), ou de données calculées par le site web (nombre de clics par exemple). Il faut donc pouvoir construire une requête qui va comporter des variables PHP comme valeur. Cela se fait très classiquement puisque la requête est en fait une chaîne de caractère. Il faut donc concaténer les variables PHP au reste de la chaîne, comme dans l exemple ci-dessous : 2 $req = 'INSERT INTO table (nom_champ1, nom_champ2) VALUES 3 ("'.$champ1.'","'.$_get['champ2'].'")'; Listing 11: Requête INSERT Il faut noter dans cette expression le fait que les valeurs soient encadrées par des, ceci est obligatoire dans le cas de champs texte. Ne pas les mettre provoque une erreur. Pour des raisons pratiques d écriture on utilisera toujours les simples quotes, pour encadrer cette chaîne. L exécution de cette requête est effectuée avec la méthode query comme précédemment. 8

9 2 $exe = $bdd->query($req); Listing 12: Requête INSERT On prend le soin de stocker le résultat de l exécution dans une variable afin de pouvoir contrôler la bonne exécution de la requête. 5 Exercices 1. Tester une requête d insert pour la table comics 2. Ecrire un formulaire qui permet la saisie des données 3. Ecrire la page de traitement qui permette l insertion des données du formulaire dans la base de données. 9

Soit la base de données «notes des étudiants» dont le modèle conceptuel est donné ci-dessous sous la forme d un diagramme de classes UML.

Soit la base de données «notes des étudiants» dont le modèle conceptuel est donné ci-dessous sous la forme d un diagramme de classes UML. Université Lumière Lyon 2 Université Nationale d Économie de Kharkiv Master 1 IDSM Année 2016-2017 Programmation Web Exercices pratiques (4) : PHP & MySQL Jérôme Darmont (http://eric.univ-lyon2.fr/~jdarmont/),

Plus en détail

Inf340 Systèmes d information. Premier site ce qu il ne faut pas faire

Inf340 Systèmes d information. Premier site ce qu il ne faut pas faire Inf340 Systèmes d information Premier site ce qu il ne faut pas faire Objectifs Objectif : Réaliser un premier site en utilisant une mauvaise approche de conception. Le site permet de gérer un carnet d

Plus en détail

Objectif. Taches proposées pour atteindre l objectif

Objectif. Taches proposées pour atteindre l objectif 9 ICN : Réalisation d un site internet, gestion de données Nom de l'élève : Classe : Table des matières 9 ICN : Réalisation d un site internet, gestion de données...1 9.1Le stockage d information, tables

Plus en détail

M Algorithmique et PHP

M Algorithmique et PHP M2202 - Algorithmique et PHP David Annebicque 2016 1 TD : Manipulation de fichiers 1.1 Introduction Ce TD/TP s intéresse à la manipulation de fichier. Nous nous focaliserons sur la manipulation de fichiers

Plus en détail

Cours 4 Programmation web, orientée serveur

Cours 4 Programmation web, orientée serveur DUT MMI IUT de Marne-la-Vallée 01/03/2016 M2202 - Algorithmique Cours 4 Programmation web, orientée serveur Philippe Gambette Sources phpdebutant.net www.php.net (documentation du langage PHP) Préambule

Plus en détail

App hybrides. Merci de vous installer par binôme de niveau différent

App hybrides. Merci de vous installer par binôme de niveau différent App hybrides Merci de vous installer par binôme de niveau différent Programme (1/2) Introduction: panorama du dev mobile Le web et le HTML Évaluation 1 (QCM) La mise en page avec CSS Les bases de Javascript

Plus en détail

PHP et MySQL. Originaux. Auteurs et version. Prérequis. Modules

PHP et MySQL. Originaux. Auteurs et version. Prérequis. Modules PHP et MySQL PHP et MySQL act-php-mysql Code: act-php-mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/act-php-mysql/act-php-mysql-fc.html url: http://tecfa.unige.ch/guides/tie/pdf/files/act-php-mysql-fc.pdf

Plus en détail

1 Introduction. 2 Connexion à un compte. 2.1 L identifiant. La saisie et l'affichage

1 Introduction. 2 Connexion à un compte. 2.1 L identifiant. La saisie et l'affichage La saisie et l'affichage 1 Introduction Dans ce chapitre nous allons aborder plus précisément le développement de notre application. Les fonctions et concepts de base détaillés dans le chapitre précédent

Plus en détail

Création de site : bases de données

Création de site : bases de données Leçon 02 Création de site : bases de données phpmyadmin 1. Démarrer phpmyadmin sur WAMP...1 2. Créer une base de données...2 3. Créer et modifier une table...2 Les types de champs MySQL...3 Les clés primaires...4

Plus en détail

Programme Formation Webmaster Opérationnel niveau 2

Programme Formation Webmaster Opérationnel niveau 2 Programme Formation Webmaster Opérationnel niveau 2 Objectif : Savoir personnaliser et dynamiser le contenu de sites web par la connaissance de l'html5/css3, du PHP MySQL, du JavaScript et d'ajax. Compétences

Plus en détail

Système d information

Système d information w w w. a g r o p a r i s t e c h. f r Système d information http://www.agroparistech.fr/systeme-d-information.html Requêtes MySQL en PHP avec AgroSIXPack Liliana IBANESCU UFR Informatique Département MMIP

Plus en détail

Génération dynamique de pages web

Génération dynamique de pages web Génération dynamique de pages web Cet article décrit quelques techniques de programmation web permettant de générer des pages web dynamiquement à partir d une base de données. STRUCTURE DE LA BASE DE DONNÉES

Plus en détail

Contexte. Maquettage des formulaires. Connexion à SQL Server 2012

Contexte. Maquettage des formulaires. Connexion à SQL Server 2012 Contexte L équipe développement est chargée de développer une application Windows afin de permettre au personnel d Humanist Network de gérer les missions humanitaires dans le monde entier. Après étude

Plus en détail

Algorithmique et développement web S2 6. Gestion des formulaires

Algorithmique et développement web S2 6. Gestion des formulaires Algorithmique et développement web S2 6. Gestion des formulaires Christophe BLANC IUT MMI IUT d Allier Université Clermont Auvergne www.christophe-blanc.fr 2016-2017 1 / 15 Rappel Un formulaire est un

Plus en détail

Installer PHP Gérer les s... 29

Installer PHP Gérer les  s... 29 Installer PHP... 13 1.1 Installer PHP avec EasyPHP....................... 15 1.2 Installer PHP avec Wamp5....................... 20 1.3 Installer PHP sous Linux......................... 24 1.4 Configurer

Plus en détail

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web

PHP & BD. PHP & Bases de données. Logiciels & matériels utilisés. Bases de données et Web PHP & Bases de données La quantité de données utilisée par certains sites web nécessite l'utilisation d'une base de données Il faut donc disposer d'un SGBD (mysql, postgresql, oracle, ) installé sur un

Plus en détail

PHP <?php. RAPPEL - MEMENTO Les sites dynamiques : MySQL

PHP <?php. RAPPEL - MEMENTO Les sites dynamiques : MySQL RAPPEL - MEMENTO Les sites dynamiques : MySQL Base de données Le PHP est un langage exécuté par le serveur. Il permet de personnaliser la page en fonction du visiteur et/ou d un contenu dans une base de

Plus en détail

Pour désactiver Javascript sur Firefox (Windows) et voir l impact sur les sites, allez dans :

Pour désactiver Javascript sur Firefox (Windows) et voir l impact sur les sites, allez dans : 1 Pour désactiver Javascript sur Firefox (Windows) et voir l impact sur les sites, allez dans : Outils -> Options -> Contenu et décochez «Activer Javascript» La plupart des sites modernes fonctionnent

Plus en détail

TP2 base de données. 1. Requêtes sur une base MySQL. Requêtes sur une seule relation. Requêtes sur une plusieurs relations.

TP2 base de données. 1. Requêtes sur une base MySQL. Requêtes sur une seule relation. Requêtes sur une plusieurs relations. TP2 base de données Mineure 2A Ce TP se compose de deux parties indépendantes. La première partie est à réaliser lors des 3 heures de TP. A la fin de la séance, vous transmettrez le compte rendu aux enseignants

Plus en détail

SQL ET ACCESS XHOOHVVRQWOHVSULQFLSDOHVFRPPDQGHV''/ GDQV64/"

SQL ET ACCESS XHOOHVVRQWOHVSULQFLSDOHVFRPPDQGHV''/ GDQV64/ 3 SQL ET ACCESS 2000 L une des forces du SQL est de pouvoir créer des tables, des champs, des contraintes, mais aussi effectuer des mises à jour, des suppressions ou des insertions d enregistrements. Le

Plus en détail

DOSSIER D'ACTIVITES SUR LE PHP N 05 Insérer des données dans une base de données

DOSSIER D'ACTIVITES SUR LE PHP N 05 Insérer des données dans une base de données DOSSIER D'ACTIVITES SUR LE PHP N 05 Insérer des données dans une base de données Objectifs : Apprendre à l apprenant à lancer un serveur local «Apache» Apprendre à l'apprenant à lancer un serveur MySQL

Plus en détail

TwinCAT Database Server. Mise en œuvre rapide du mode manuel VERSION : 1.0 BETA /JC DATE :

TwinCAT Database Server. Mise en œuvre rapide du mode manuel VERSION : 1.0 BETA /JC DATE : TwinCAT Database Server Mise en œuvre rapide du mode manuel VERSION : 1.0 BETA /JC DATE : 26-12 -12 Table des matières 1 Installation... 3 2 XML Configurator file editor... 4 2.1 Description des menus

Plus en détail

Intégration dans un langage hôte de programmation

Intégration dans un langage hôte de programmation Le langage SQL Intégration dans un langage hôte de programmation 1/32 Utilité Le mode interactif ne convient pas: Lors de tâches répétitives sur un grand volume de données Lorsque les utilisateurs ne possèdent

Plus en détail

Dreamweaver + Php + Mysql

Dreamweaver + Php + Mysql Dreamweaver + Php + Mysql Le Jeu d'enregistrements - Les fondamentaux Part-3 La 3ème partie des fondamentaux, traitera essentiellement du jeu d'enregistrements ou Recordset. J'ai voulu éclaircir au maximun

Plus en détail

Université Nancy 2 - L3 Miage - Initiation réseau et programmation web - Nazih Ouwayed

Université Nancy 2 - L3 Miage - Initiation réseau et programmation web - Nazih Ouwayed UE 503 L3 MIAGE Initiation Réseau et Programmation Web Séance 06 PHP Nazih OUWAYED nazih.ouwayed@loria.fr http://www.loria.fr/~ouwayedn/ Bases de données Année Universitaire 2010/2011 2 g C est quoi une

Plus en détail

Guide de survie html/php/mysql

Guide de survie html/php/mysql Guide de survie html/php/mysql Table des matières 1) Configuration de netbeans...2 2) Formulaires en html...5 2.1 - Récupération des informations en provenance d'un formulaire :...6 3) Les fonctions en

Plus en détail

Export base de donnée Wordpress Transférer un site wordpress du local vers un hébergement distant

Export base de donnée Wordpress Transférer un site wordpress du local vers un hébergement distant Export base de donnée Wordpress Transférer un site wordpress du local vers un hébergement distant TP 33 Export base de donnée Wordpress I - Principe Vous avez développé votre site en local sous Wamp, créé

Plus en détail

Bases de données et Sites Web. Li345 Le langage PHP 4 ème partie. Lien avec MySQL

Bases de données et Sites Web. Li345 Le langage PHP 4 ème partie. Lien avec MySQL Bases de données et Sites Web. Li345 Le langage PHP 4 ème partie Lien avec MySQL 1 Rappel d architecture Principe : création de documents à partir d une BD MySQL : stockage, protection des données, interface

Plus en détail

SOMMAIRE 1. INTRODUCTION SCHEMAS TABLES USERS CONNECTIONS MYSQLDUMP 2. INSTALLATION MYSQL (WINDOWS LINUX) 3. PARTITIONNEMENT DES TABLES 6

SOMMAIRE 1. INTRODUCTION SCHEMAS TABLES USERS CONNECTIONS MYSQLDUMP 2. INSTALLATION MYSQL (WINDOWS LINUX) 3. PARTITIONNEMENT DES TABLES 6 DBA MySQL 1. INTRODUCTION SCHEMAS TABLES USERS CONNECTIONS MYSQLDUMP 2. INSTALLATION MYSQL (WINDOWS LINUX) 3. MOTEURS MYSQL MYISAM INNODB MEMORY MERGE AUTRES 4. OUTILS MYSQL ROUTINES PROCEDURES STOCKEES

Plus en détail

Cahier de charges du projet

Cahier de charges du projet BTS SIO 2 SLAM PPE 1 : Site Commercial avec PHPP & SQL Cahier de charges du projet Nom: Bryan Gaudet Titre du TP : Site Commercial PHP & SQL Professeur référent : Mme. Gaddouri Nom du Site : Vintage Club

Plus en détail

TP 6 : PHP & MYSQL. Apprendre la manipulation des bases de données sous MySQL. Manipuler une base de données MySQL à travers des formulaires php.

TP 6 : PHP & MYSQL. Apprendre la manipulation des bases de données sous MySQL. Manipuler une base de données MySQL à travers des formulaires php. TP 6 : PHP & MYSQL OBJECTIFS : Apprendre la manipulation des bases de données sous MySQL. Manipuler une base de données MySQL à travers des formulaires php. On se propose de réaliser une petite application

Plus en détail

INTERACTION PHP-MYSQL

INTERACTION PHP-MYSQL INTERACTION PHP-MYSQL 1) Connexion à l environnement MySql Afin d établir une connexion avec un serveur MySql, nous utilisons la fonction mysql_connect(). identifiant_connection = mysql_connect( nom_hote,

Plus en détail

introduction PHP 5 séries d'exercices PHP

introduction PHP 5 séries d'exercices PHP Support de TP PHP IRSII 2009 2010 introduction PHP 5 séries d'exercices PHP (Support proposé par C. Dabancourt, inspiré aussi par des exemples et tutoriels Internet) 1 PHP Séance n 1 HTML et PHP 3 1.1

Plus en détail

Formulaire HTML et PHP

Formulaire HTML et PHP 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

Plus en détail

Introduction à PHP - MySQL

Introduction à PHP - MySQL Yann Viémont 2009-2012 Université de Versailles St-Quentin Y. Viémont Plan 1. Introduction par l'exemple 2. Les principes de PHP 3. Un langage de programmation 4. Les tableaux 2 Introduction par l'exemple

Plus en détail

Pages Web dynamiques et bases de données

Pages Web dynamiques et bases de données Chapitre 2 Pages Web dynamiques et bases de données Une page Web dynamique est générée automatiquement grâce à l exécution d un script (PHP par exemple). C est le résultat de l exécution de ce script (code

Plus en détail

BadPHP. Fiche explicative des Classes et des Fonctions de BadPHP. Equipe : Savelli Adrien Hugo Morales

BadPHP. Fiche explicative des Classes et des Fonctions de BadPHP. Equipe : Savelli Adrien Hugo Morales BadPHP Fiche explicative des Classes et des Fonctions de BadPHP Equipe : Savelli Adrien Hugo Morales SOMMAIRE 1 Classe $sql... 1 1.1 connect(string (1), string (2), string (3), string (4));... 1 1.2 request(variable,

Plus en détail

Le langage PHP. Le langage PHP p.1/??

Le langage PHP. Le langage PHP p.1/?? Le langage PHP Le langage PHP p.1/?? Le langage PHP p.2/?? Sommaire Les principaux aspects du langage PHP généralités littéraux, variables et constantes tableaux associatifs et indicés boucles et tests

Plus en détail

Python et bases de données. Khalid HOUSNI

Python et bases de données. Khalid HOUSNI Python et bases de données Khalid HOUSNI Une base de données c'est quoi? Une base de données (database en anglais) est un conteneur dans lequel il est possible de stocker des données de façon structurée

Plus en détail

Groupe Eyrolles, 2006, ISBN : X

Groupe Eyrolles, 2006, ISBN : X Groupe Eyrolles, 2006, ISBN : 2-212-11771-X Création de pages dynamiques courantes CHAPITRE 3 151 Tableau 3-3 Paramètres du jeu d enregistrements rslisteresultat Zone Valeur Commentaires Nom rslisteresultat

Plus en détail

TD2-1 : Application client-serveur V2.3.0

TD2-1 : Application client-serveur V2.3.0 TD2-1 : Application client-serveur V2.3.0 Cette œuvre est mise à disposition selon les termes de la licence Creative Commons Attribution Pas d'utilisation Commerciale Partage à l'identique 3.0 non transposé.

Plus en détail

SESSION, AUTHENTIFICATION ET CONTRÔLE D ACCÈS

SESSION, AUTHENTIFICATION ET CONTRÔLE D ACCÈS SESSION, AUTHENTIFICATION ET CONTRÔLE D ACCÈS Développer des applications Web 1 Gestion de sessions Session 2 En informatique, le terme «session» désigne un temps durant lequel un programme est en interaction

Plus en détail

Création de Sites. Introduction PHP. EEMI, Ecole Européenne des Métiers de l Internet Par Philippe Giraud

Création de Sites. Introduction PHP. EEMI, Ecole Européenne des Métiers de l Internet Par Philippe Giraud Création de Sites Introduction PHP EEMI, Ecole Européenne des Métiers de l Internet Par Philippe Giraud philippe.giraud@enseignant-eemi.com Introduction PHP PHP Hypertext Preprocessor Un langage de programmation

Plus en détail

Jusqu à 14 h : Open Questions! On vous explique ce que vous n avez pas compris lors de la première formation.

Jusqu à 14 h : Open Questions! On vous explique ce que vous n avez pas compris lors de la première formation. Bienvenue! Jusqu à 14 h : Open Questions! On vous explique ce que vous n avez pas compris lors de la première formation. Téléchargez les logiciels nécessaires pour cette formation : http ://formation-web.via.ecp.fr

Plus en détail

Introduction aux Bases de données et à SQL

Introduction aux Bases de données et à SQL 1/40 Introduction aux Bases de données et à SQL Bibliographies: Pour la première partie de ce cours, une revue littéraire a été réalisée à partir des documents mentionnés ci-dessous. Comme la première

Plus en détail

Simplifier... Programmation en PL/SQL

Simplifier... Programmation en PL/SQL Simplifier... Programmation en PL/SQL Référence PPN MC-INFO-OMGL3 : Intégration des SGBD dans les environnements de programmation Objectifs Procédures stockées Utilisation du langage PL/SQL Mise à jour

Plus en détail

1. Avec un script php. 2. En utilisant phpmyadmin

1. Avec un script php. 2. En utilisant phpmyadmin Université Lumière - Lyon 2 Master d Informatique M1 - Année 2006-2007 Programmation Web - TDs n 8 9 : PHP - Mysql L. Tougne (http ://liris.cnrs.fr/laure.tougne), 20/11/06 L objectif de ce TD est d utiliser

Plus en détail

Utiliser une base de données MySQL En ligne de commande

Utiliser une base de données MySQL En ligne de commande Utiliser une base de données MySQL En ligne de commande 1. Préparation de l'environnement 1. Installer Xampp_Lite directement la racine de votre unité réseau ou sur une clé USB. 2. Pour démarrer le couple

Plus en détail

Bases de données et Sites Web. Li345 Le langage PHP 2 ème partie. généralités tableaux structures de contrôle

Bases de données et Sites Web. Li345 Le langage PHP 2 ème partie. généralités tableaux structures de contrôle Bases de données et Sites Web. Li345 Le langage PHP 2 ème partie généralités tableaux structures de contrôle 1 Rappel : CGI et bases de données Architecture 3 tiers MySQL : stockage, protection des données,

Plus en détail

Atelier Web Les langages du Web Le MySQL Module 1 - Les bases

Atelier Web Les langages du Web Le MySQL Module 1 - Les bases Atelier Web Les langages du Web Le MySQL Module 1 - Les bases Définition MySQL = SGBD = Système de Gestion de Base de Données Le rôle du MySQL est de vous aider à enregistrer les données de manière organisée

Plus en détail

Réalisation de la page login.php. Dès que le client clique sur le bouton Commander depuis l écran du panier, la page

Réalisation de la page login.php. Dès que le client clique sur le bouton Commander depuis l écran du panier, la page 450 PHP/MySQL avec Dreamweaver MX 2004 Réalisation de la page login.php Dès que le client clique sur le bouton Commander depuis l écran du panier, la page commande.php est appelée. Cette page étant protégée,

Plus en détail

COURS 6 Adopter un style de programmation clair

COURS 6 Adopter un style de programmation clair COURS 6 Adopter un style de programmation clair Lorsque votre site prend de l'importance, le code devient vite illisible et incompréhensible si vous ne pensez pas à l'organiser. Mais comment organiser

Plus en détail

Algorithmique et développement web S2 3. Tableaux

Algorithmique et développement web S2 3. Tableaux Algorithmique et développement web S2 3. Tableaux Christophe BLANC IUT MMI IUT d Allier Université Clermont Auvergne www.christophe-blanc.fr 2016-2017 1 / 21 Définition En PHP, un tableau est une collection

Plus en détail

Bypasser une authentification

Bypasser une authentification Bypasser une authentification Shiney June 2, 2011 1 Préface Cet article ne prône absolument pas le piratage mais la connaissance. Par conséquent, vous devez savoir qu en cas de piratage, vous êtes seul

Plus en détail

Cours 7: DML. Exploitation des données

Cours 7: DML. Exploitation des données Cours 7: DML Exploitation des données Manipulation de données Data Manipulation Language (DML Langage de Manipulation de Données) est une partie importante de SQL. Lorsque vous souhaitez ajouter, mettre

Plus en détail

Applications php et postgresql. Département INFormatique

Applications php et postgresql. Département INFormatique Applications php et postgresql Département INFormatique Plan du document Interfacer les Bases de Données et le Web Passerelle PHP - Principe des passerelles PHP - Architecture 3-tiers Web (dynamique) PHP

Plus en détail

Documentation technique Back-office

Documentation technique Back-office MEEVY Documentation technique Back-office Juillet 2010 MEEVY a pour but de fournir aux artistes des outils pour promouvoir leur musique sur internet et proposer à l auditeur une plateforme de musique en

Plus en détail

Introduction Les bases du langage Transmission de variables La persistance. Formation PHP. Maxime Arthaud. net7. Mardi 22 octobre 2013.

Introduction Les bases du langage Transmission de variables La persistance. Formation PHP. Maxime Arthaud. net7. Mardi 22 octobre 2013. Maxime Arthaud net7 Mardi 22 octobre 2013 PHP, Qu est-ce que c est? Client / Serveur Développer en local Syllabus 1 Introduction PHP, Qu est-ce que c est? Client / Serveur Développer en local 2 3 4 PHP,

Plus en détail

TP SIN Connexion base de données (PDO)

TP SIN Connexion base de données (PDO) TP SIN Connexion base de données (PDO) Support : carte arduino yun Pré requis (l élève doit savoir): - Savoir utiliser un ordinateur - Connaître le html, Css, PHP Programme Objectif terminale : L élève

Plus en détail

Groupe Eyrolles, 2006, ISBN : X

Groupe Eyrolles, 2006, ISBN : X Groupe Eyrolles, 2006, ISBN : 2-212-11771-X 160 PHP/MySQL avec Dreamweaver 8 Figure 3-30 Après l insertion d un nouveau résultat, la page Mes résultats affiche la liste actualisée des résultats. Page de

Plus en détail

Procédure manuelle de création de pages Principale-Détails

Procédure manuelle de création de pages Principale-Détails 189 Procédure manuelle de création de pages Principale-Détails Création de la page coordonnees.php 1. Ouvrez le fichier coordonnees.php dans le dossier public. À noter que si vous avez déjà réalisé la

Plus en détail

L installation de ChemProducts est plutôt simple. C est une procédure qui se passe en trois étapes :

L installation de ChemProducts est plutôt simple. C est une procédure qui se passe en trois étapes : L installation de ChemProducts est plutôt simple. C est une procédure qui se passe en trois étapes : 1. Installer la structure de la base de données. Dans un premier temps cette base sera vierge et puis,

Plus en détail

Université Bordeaux Segalen Licence 3 MIASHS, semestre 6 (2014/2015)

Université Bordeaux Segalen Licence 3 MIASHS, semestre 6 (2014/2015) Université Bordeaux Segalen Licence 3 MIASHS, semestre 6 (2014/2015) Conception de Sites Web Dynamiques : TD 7 Inscription de membres - Variables de sessions - Formulaires pour insérer des images Version

Plus en détail

Cliquer sur «Add New Site» entrez l url du site dans la zone de texte venant d apparaître puis validez en cliquant sur «Add»

Cliquer sur «Add New Site» entrez l url du site dans la zone de texte venant d apparaître puis validez en cliquant sur «Add» Etapes mise en place de WPML 1- Enregistrer le site sur WPML Se rendre sur http://wpml.org > «Account» S identifier puis aller sur «Sites» Cliquer sur «Add New Site» entrez l url du site dans la zone de

Plus en détail

Exécutez ce programme à partir du serveur sur lequel

Exécutez ce programme à partir du serveur sur lequel T7 notice Installation MSI Le MSI Module de saisie Internet ne fonctionne qu avec la version 7 pour SQL de Temps 2000. Cette version doit donc avoir été préalablement installée et alimentée en données,

Plus en détail

Qu'est-ce que Mysql?

Qu'est-ce que Mysql? Mysql avec php Qu'est-ce que Mysql? Annie Danzart Annie.Danzart@enst.fr http://www.infres.enst.fr/~danzart/mysql/ Qu est-ce que Mysql? Aperçu Langage Le serveur La base de données Interfaces d accès Fonctions

Plus en détail

Création d appels à projets et soumission de projets

Création d appels à projets et soumission de projets Création d appels à projets et soumission de projets Utilisation la plateforme IDEX d UCA Documentation à l usage des porteurs de projets Table des matières Préambule... 2 Se connecter à la plateforme

Plus en détail

UE INF-MEDB : Aspects Méthodologique des bases de données. Partage de données

UE INF-MEDB : Aspects Méthodologique des bases de données. Partage de données Introduction Partage de Nous avons vu les éléments essentiels pour concevoir et créer une base de. Avec la création des formulaires et états, nous avons commencé à aborder le "partage" des. Les utilisateurs

Plus en détail

1 Instructions pour les Travaux Pratiques en Langage C

1 Instructions pour les Travaux Pratiques en Langage C Travaux Pratiques Module UE1 - Maitrise EEEA - 2003/2004 1 Instructions pour les Travaux Pratiques en Langage C LES ENONCES DE TP SONT DISTRIBUES EN TD. L ETUDIANT DOIT ARRIVER EN SEANCES DE TP AVEC L

Plus en détail

Informatique UV21 Exercices corrigés sur les boucles

Informatique UV21 Exercices corrigés sur les boucles Informatique UV21 Exercices corrigés sur les boucles Exercice 1 Proposer un algorithme permettant de tester si une chaîne de caractères (contenue dans une variable s) est un palindrome. Le résultat (vrai/faux)

Plus en détail

ADO. 27/12/02 CPI WEB Dynamique ASP microsoft Philippe Bancquart

ADO. 27/12/02 CPI WEB Dynamique ASP microsoft Philippe Bancquart ADO Comment accéder aux données sur une plate-forme Microsoft? A.D.O. = ActiveX Data Object Composant COM : ADODB Repose sur l'architecture OLE DB Propose 7 objets COM pour l accès aux données. 1 La technologie

Plus en détail

Les fondamentaux du langage Perl 5 Apprentissage par la pratique (Nouvelle édition)

Les fondamentaux du langage Perl 5 Apprentissage par la pratique (Nouvelle édition) Démarrer avec Perl 1. Caractéristiques du langage Perl 13 1.1 Les domaines d'utilisation de Perl 15 1.2 Perl 5 16 1.3 Perl 6 16 2. Mise en œuvre de Perl 17 2.1 Unix/Linux 17 2.1.1 Installation de Perl

Plus en détail

Programmation MySQL/PHP. Programmation MySQL/PHP p.1/19

Programmation MySQL/PHP. Programmation MySQL/PHP p.1/19 Programmation MySQL/PHP Programmation MySQL/PHP p.1/19 CGI et bases de données Principe : création de documents à partir d une BD MySQL se charge du stockage, de la protection des données, de l interface

Plus en détail

Magasin de Vente par Correspondance

Magasin de Vente par Correspondance Cours : Web Dynamique 2 (WD2) Professeur : M. J.P. Delcroix Compte rendu de TP n 2 Première approche de la base de données en PHP Magasin de Vente par Correspondance Auteur : Pierre Galerneau Année Universitaire

Plus en détail

Web dynamique. approche client/serveur

Web dynamique. approche client/serveur Web dynamique approche client/serveur Client/serveur Serveur requête (url) réponse (fichiers) Client url = adresse IP + /chemin/vers/fichier réponse = fichier (lu sur le DD du serveur) Le client gère la

Plus en détail

Découverte du Framework jquery Mobile en autonomie pour le contexte GSB (PARTIE 4)

Découverte du Framework jquery Mobile en autonomie pour le contexte GSB (PARTIE 4) Découverte du Framework jquery Mobile en autonomie pour le contexte GSB (PARTIE 4) Description du thème Propriétés Description Intitulé long Formation concernée Matière Présentation Notions Prérequis Outils

Plus en détail

Cours4 : Les sessions

Cours4 : Les sessions Cours4 : Les sessions Les sessions Plan Gestion d un caddie Les sessions Rappel : Plusieurs possibilités existent pour transmettre des variables de pages en pages dans site web : les divers champs des

Plus en détail

4. LES OPERATIONS DANS LES REQUETES 4.1. LISTE DES FONCTIONS DISPONIBLES LES REQUETES

4. LES OPERATIONS DANS LES REQUETES 4.1. LISTE DES FONCTIONS DISPONIBLES LES REQUETES LES REQUÊTES (SUITE) 4. LES OPERATIONS DANS LES REQUETES Après avoir collecté les données dans une feuille de réponses, il est possible de visualiser le résultat ou de l'imprimer. Mais il peut s'avérer

Plus en détail

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR

PHP /MySQL Interface d'accès aux BDDs PDO. Youssef CHAHIR PHP /MySQL Interface d'accès aux BDDs PDO Youssef CHAHIR 1 PLAN Architecture Créer une interface PHP/MySQL : Établir une connexion Exécuter une requête Gérer les erreurs Exploiter les résultats de la requête

Plus en détail

L'installation du GIBII (version 3.5) en détails

L'installation du GIBII (version 3.5) en détails L'installation du GIBII (version 3.5) en détails 1) Apache? EasyPhp? PHP? PHPAdmin? MySQL? (source: http://fr.wikipedia.org/wiki/accueil) EasyPHP est une plateforme de développement web contenant les versions

Plus en détail

I) Principales commandes pour créer et modifier une base de données :

I) Principales commandes pour créer et modifier une base de données : TP D INFORMATIQUE PTSI : INITIATION AUX BASES DE DONNEES : TP 1 : CREATION ET MODIFICATION D UNE BASE DE DONNEES I) Principales commandes pour créer et modifier une base de données : Voici les principales

Plus en détail

Université Mohamed Premier Année universitaire 2014/2015. Module «Technologies du Web» ---------------------------- Feuille de TP 6 MYSQL/PHP

Université Mohamed Premier Année universitaire 2014/2015. Module «Technologies du Web» ---------------------------- Feuille de TP 6 MYSQL/PHP Université Mohamed Premier Année universitaire 2014/2015 Faculté des Sciences Filière SMI S6 Module «Technologies du Web» ---------------------------- Feuille de TP 6 MYSQL/PHP Exercice 1 : Testez les

Plus en détail

PhpMyAdmin Ecran d'accueil

PhpMyAdmin Ecran d'accueil PhpMyAdmin Je vais vous présenter, dans ce tutorial, les fonctionnalités de base de PhpMyAdmin: Création de bases de données, création de tables, modification de tables, insertion de données, exportation

Plus en détail

Authentification forte Sécurisez vos e-services avec tous les facteurs d'authentification

Authentification forte Sécurisez vos e-services avec tous les facteurs d'authentification Créer un compte Connexion Accueil Outils Scripts et Tutoriels Kits Graphiques Forum Compteur Global gratuit sans pages vues sans visites sans visiteurs sans Boutons de navigation Vous êtes ici: Support

Plus en détail

INF04-06 Langages et structure du Web. Benoît Habert

INF04-06 Langages et structure du Web. Benoît Habert INF04-06 Langages et structure du Web Benoît Habert Séance 8 - début Rappels Les limites de l appel à un autre script AJAX Modèle/Vue/Contrôleur : un patron de conception MVC en action : revisiter l exemple

Plus en détail

PHP MySQL N 2. IUT MMI Saint Raphaël 2014-2015

PHP MySQL N 2. IUT MMI Saint Raphaël 2014-2015 PHP MySQL N 2 IUT MMI Saint Raphaël 2014-2015 Base de données : Utilisation avec PHP Se connecter à la base de données PHP propose plusieurs moyens de se connecter à une base de données MySQL : - L'extension

Plus en détail

Pour la création de la requête SQL pour insérer des données, nous devons concaténer des variables avec des chaines de caractères contenant du texte.

Pour la création de la requête SQL pour insérer des données, nous devons concaténer des variables avec des chaines de caractères contenant du texte. TP 4 Master CTN A. sprintf Pour la création de la requête SQL pour insérer des données, nous devons concaténer des variables avec des chaines de caractères contenant du texte. Voici la requête SQL que

Plus en détail

Conception de Sites Web Dynamiques : TD 7 Mise en page et site web adaptative (responsive web design) Version temporaire du 25 Mars 2016

Conception de Sites Web Dynamiques : TD 7 Mise en page et site web adaptative (responsive web design) Version temporaire du 25 Mars 2016 Université Bordeaux Segalen Licence 3 MIASHS, semestre 6 (2015/2016) Conception de Sites Web Dynamiques : TD 7 Mise en page et site web adaptative (responsive web design) Version temporaire du 25 Mars

Plus en détail

Introduction aux bases de données et au langage SQL

Introduction aux bases de données et au langage SQL Introduction aux bases de données et au langage SQL Résumé Ce TP a pour but la découverte d un environnement de gestion de bases de données et un premier contact avec la notion de requête. On suppose pour

Plus en détail

Le logiciel. J2H2 1.1 : manuel d'utilisation. Interface principale

Le logiciel. J2H2 1.1 : manuel d'utilisation. Interface principale J2H2 1.1 : manuel d'utilisation J2H2 est un outil qui vous permet de générer un site web automatiquement à partir d'images JPEG. J2H2 se base sur votre propre code HTML pour générer les fichiers HTML contenant

Plus en détail

Cours 12 Publication dynamique de contenu d'une base de données sur le Web avec PHP

Cours 12 Publication dynamique de contenu d'une base de données sur le Web avec PHP École de bibliothéconomie et des sciences de l information SCI6306 Bases de données documentaires Cours 12 Publication dynamique de contenu d'une base de données sur le Web avec PHP Faculté des arts et

Plus en détail

Protéger son site web des attaques Sql Injection

Protéger son site web des attaques Sql Injection 13 Protéger son site web des attaques Sql Injection LES BONNES PRATIQUES en sécurité de l information 1 PROTÉGER SON SITE WEB DES ATTAQUES SQL INJECTION Les attaques de type injection sont considérées

Plus en détail

Grammaticalité et grammaire française

Grammaticalité et grammaire française Raillard Lisa et Khan Zainab Mercredi 23 Mai 2012 raillar8@etu-unige.ch, ahmedza6@etu.unige.ch Prof: Nerima Luka Projet NTIC Module BA6 Semestre de printemps 2012 Grammaticalité et grammaire française

Plus en détail

URL du serveur ANCRE :

URL du serveur ANCRE : URL du serveur ANCRE : http://ancre.atih.sante.fr 1. Entrez login et mot de passe EPMSI 2. Cliquez sur le lien «Plans Prévisionnels de Trésorerie» Information sur l avancement du Plan Prévisionnel de Trésorerie

Plus en détail

mysql L'intérêt majeur de PHP est son interfaçage avec un grand nombre de bases de données d'une manière relativement simple et efficace.

mysql L'intérêt majeur de PHP est son interfaçage avec un grand nombre de bases de données d'une manière relativement simple et efficace. mysql Table des matières 1. Introduction...2 2. PHP et les bases de Données...2 3. phpmyadmin...3 3.1. Créer une base de données...3 3.2. Modifier une table...5 3.3. Autres opérations...7 3.3.1. SQL...7

Plus en détail