Initiation aux bases de données avec PHP

publicité
PHP & MySQL
ICN (seconde)
Initiation aux bases de données avec PHP
Introduction
Tu as vu que le langage PHP te permettait de réaliser des pages Web dynamiques. Ces pages sont en
fait re-fabriquées au niveau du serveur PHP.
Il est aussi possible de gérer des données via un gestion de fichiers. On peut donc écrire et lire des
données dans un fichier pour effectuer des traitements. Mais cela n’est pas bien pratique, car la
gestion est assez lourde.
Pour pouvoir gérer très facilement un très grand nombre de données. Une base de données permet
de mettre des données à la disposition d'utilisateurs pour une consultation, une saisie ou bien une
mise à jour. Tu vas découvrir que cette méthode est bien plus rapide efficace que la gestion de
fichiers vue précédemment.
Ces données sont classées. Elles peuvent donc être retrouvées très rapidement.
On parle alors de SGBD (Systèmes de Gestion de Bases de Données)
Prenons l’exemple d’un carnet
Nous allons utiliser MySql qui est une application qui gère des bases de données. MySql sera alors
installer sur un serveur.
Tu vas devoir communiquer avec le SGBD pour lui donner l'ordre de récupérer ou d'enregistrer des
données. Pour lui « parler », on utilise le langage SQL.
Version du 27/01/2017
1/
Julien Launay
PHP & MySQL
ICN (seconde)
Pour pouvoir échanger des informations avec une base de données (ici MySql), on va utiliser le PHP
pour pouvoir dialoguer en SQL. PHP fait alors le lien entre vous (client) et la base de données
(MySql).
Une base de données est organisée de la façon suivante :
Création d’une table
On va dans un premier temps créer une base de données, une liste de textes en français. On ne va
pas commencer par utiliser tout de suite PHP, mais tout simplement un outil spécifique qui gère
directement des bases de données : Phpmyadmin.
Tu vas lancer l’application Phpmyadmin pour paramétrer ta première base de données.
Dans ton navigateur tape : Localhost/phpmyadmin si MySql est installé sur ton poste, sinon
http://adresse_ip_mysql/phpmyadmin
Version du 27/01/2017
2/
Julien Launay
PHP & MySQL
ICN (seconde)
Tu arrives alors sur la page d’accueil de Phpmyadmin
Création de la table dans la base de données
On créé une table de 5 champs (id, auteur, titre, type_texte, année)
Création des champs de la table de la base de données
Version du 27/01/2017
3/
Julien Launay
PHP & MySQL
ICN (seconde)
Insertion d’un élément dans la table
Tu vas ajouter quelques éléments à ta table dans les différents champs.
Vérifie que tous tes champs sont bien insérés.
Version du 27/01/2017
4/
Julien Launay
PHP & MySQL
ICN (seconde)
Faire une recherche (notion de requête SQL)
Pour effectuer une recherche dans la base de données, il suffit d’écrire une requête SQL.
Recherchons par exemple tous les livres « classiques »
Ici * signifie tous les éléments de tous les champs.
Effectue maintenant des requêtes suivantes :
Liste des livres de Rousseau
Liste des livres écrits après 1800
La commande ORDER BY permet de trier par ordre croissant des données suivant un champ.
Exemple de requête : SELECT * FROM nom_table ORDER BY nom_champ DESC
DESC permet de trier par ordre décroissant.
Teste une requête pour afficher tous les textes par ordre croissant suivant les années de parution
d’un texte.
Pour utiliser une variable issu d’un formulaire
Créer une page Web qui interroge la base de données.
Tu vas voir maintenant comment lire des éléments d’une table.
Il va falloir demander le droit à se connecter à la base de données. En effet, une base de données est
sécurisée par un login et mot de passe. Tu l’as vu précédemment pour te connecter à Phpmyadmin.
Ce programme php permet :
1. Accéder à la base de données
2. Lire les éléments associés à une requête SQL
Version du 27/01/2017
5/
Julien Launay
PHP & MySQL
ICN (seconde)
3. Lire et afficher toutes les éléments de la table associé à la requête SQL
4. On ferme la requête
Teste ta page Web en php.
Pour cela téléverse ta page php sur le serveur MySql grâce à un client FTP déjà vu.
Tape ensuite dans ton navigateur http://nom_site_web/ta_page_php.php
Vérifie que ça fonctionne.
Ajouter des éléments dans un champ d’une table d’une base de
données
Tu as déjà utiliser sans le savoir une requête d’insertion, lorsque tu as renseigné chaque champ de ta
base de données.
Commence par utilise Phpmyadmin pour faire un essai d’insertion d’un texte.
Vérifie que le nouvel élément a bien été insérer
En PHP
Version du 27/01/2017
6/
Julien Launay
PHP & MySQL
ICN (seconde)
Mise à jour d’un élément
Supprimer un élément
Utiliser des fonctions sur des éléments
Version du 27/01/2017
7/
Julien Launay
Téléchargement