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 Éditeur HTML : Notepad++ (léger) ou Komodo (spécialisé web). Serveur de test : WampServer (Windows) ou MAMP (Mac)
Formations web (3/3) SQL : stockez vos données VIA Centrale Réseaux Jeudi 10 mars 2011
Sommaire 1 Introduction aux bases des données 2 3 4
Sommaire 1 Introduction aux bases des données 2 3 4
Rappel Introduction aux bases des données PHP execute du code pour générer le code HTML de la page web. L utilisateur peut envoyer des informations par l URL ou formulaire.
Des lacunes Introduction aux bases des données Une technique qui a ses limites...
Des lacunes Introduction aux bases des données Une technique qui a ses limites... Comment écrire des news?
Des lacunes Introduction aux bases des données Une technique qui a ses limites... Comment écrire des news? Comment inscrire un utilisateur?
Des lacunes Introduction aux bases des données Une technique qui a ses limites... Comment écrire des news? Comment inscrire un utilisateur? Ou s enregistre mon commentaire? Réponse : dans...
Des lacunes Introduction aux bases des données Une technique qui a ses limites... Comment écrire des news? Comment inscrire un utilisateur? Ou s enregistre mon commentaire? Réponse : dans... une base de données SQL!
Le SQL? Introduction aux bases des données Le SQL (Structured Query Language) est un langage utilisé pour communiquer avec des bases de données.
Le SQL? Introduction aux bases des données Le SQL (Structured Query Language) est un langage utilisé pour communiquer avec des bases de données. MySQL est un SGBD (Système de Gestion de Base de Données) : un logiciel qui gère des bases de données. Il communique en SQL. Il existe d autres SGBD (PostgreSQL, SQLite,...).
Et en pratique? Introduction aux bases des données
Et en pratique? Introduction aux bases des données MySQL est inclus dans WAMPServer.
Et en pratique? Introduction aux bases des données MySQL est inclus dans WAMPServer. Interface de gestion graphique : PHPMyAdmin.
Et en pratique? Introduction aux bases des données MySQL est inclus dans WAMPServer. Interface de gestion graphique : PHPMyAdmin.
Le principe Introduction aux bases des données Principe sommaire :
Le principe Introduction aux bases des données Principe sommaire : Une base de donnée...
Le principe Introduction aux bases des données Principe sommaire : Une base de donnée... contient des tables...
Le principe Introduction aux bases des données Principe sommaire : Une base de donnée... contient des tables... qui sont des tableaux. Pour plus de théorie, se reporter au rattrapage de SI.
Introduction aux bases des données La gestion des bases PHPMyAdmin permet aisément :
Introduction aux bases des données La gestion des bases PHPMyAdmin permet aisément : La gestion des bases et tables Création Modification Suppression
Introduction aux bases des données La gestion des bases PHPMyAdmin permet aisément : La gestion des bases et tables Création Modification Suppression Des enregistrements à la main
Introduction aux bases des données La gestion des bases PHPMyAdmin permet aisément : La gestion des bases et tables Création Modification Suppression Des enregistrements à la main Mais ce n est pas lui qui va faire votre site! (Administration uniquement)
Les tables Introduction aux bases des données Table : Tableau de données Colonne : Un type de variable à stocker Ligne : Un enregistrement Un impératif : une colonne d identification unique.
Les colonnes Introduction aux bases des données Pour désigner les colonnes, on parle de champ ou attribut. Caractérise une propriété de l élément enregistré. Personne : nom, age, adresse mail Produit : prix, disponibilité Cours : amphi, date, professeur, matière
Introduction aux bases des données Les types de champ Plusieurs natures d attribut.
Introduction aux bases des données Les types de champ Plusieurs natures d attribut. Entier : INT(n) Maximum de 2 puissance (n-1). Signé par défaut.
Introduction aux bases des données Les types de champ Plusieurs natures d attribut. Entier : INT(n) Maximum de 2 puissance (n-1). Signé par défaut. Décimal : DECIMAL(n,d) n chiffres, d décimales.
Introduction aux bases des données Les types de champ Plusieurs natures d attribut. Entier : INT(n) Maximum de 2 puissance (n-1). Signé par défaut. Décimal : DECIMAL(n,d) n chiffres, d décimales. Texte : VARCHAR(n) Maximum de n caractères. A mettre entre guillemets.
Introduction aux bases des données Les types de champ Plusieurs natures d attribut. Entier : INT(n) Maximum de 2 puissance (n-1). Signé par défaut. Décimal : DECIMAL(n,d) n chiffres, d décimales. Texte : VARCHAR(n) Maximum de n caractères. A mettre entre guillemets. Mais aussi DATE, TIME, ENUM, SET,...
Introduction aux bases des données Les types de champ Plusieurs natures d attribut. Entier : INT(n) Maximum de 2 puissance (n-1). Signé par défaut. Décimal : DECIMAL(n,d) n chiffres, d décimales. Texte : VARCHAR(n) Maximum de n caractères. A mettre entre guillemets. Mais aussi DATE, TIME, ENUM, SET,... Toujours créer un champ id de type INT avec une clé primaire et Auto-Incrémentation.
Sommaire 1 Introduction aux bases des données 2 Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour 3 4
Concept Introduction aux bases des données Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour
Introduction aux bases des données Connexion à la base Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour Les fonctions mysql * communiquent avec MySQL. Version simple mais vieillisante. Préférez PDO (orienté objet). Connexion mysql_connect($host, $user, $pass); mysql_set_charset( utf8 ); mysql_select_db($db); de connexion mysql_connect( localhost, root, ); mysql_charset("utf8"); mysql_select_db( exemple );
Le SELECT Introduction aux bases des données Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour SELECT La requête SQL SELECT permet de récupérer des données. Syntaxe complète SELECT champ1, champ2, champ3 FROM tables WHERE condition1 AND condition 2... ORDER BY champ1, champ2 LIMIT n,m ; Joker * pour selectionner toutes les colonnes. A éviter.
Introduction aux bases des données s de SELECT Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour
Introduction aux bases des données s de SELECT Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour Tout selectionner SELECT * FROM tables
Introduction aux bases des données s de SELECT Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour Tout selectionner SELECT * FROM tables Une condition SELECT nom, nombre FROM nourriture WHERE type = fruit OR type = legume
Introduction aux bases des données s de SELECT Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour Tout selectionner SELECT * FROM tables Une condition SELECT nom, nombre FROM nourriture WHERE type = fruit OR type = legume Résultat trié et tronqué SELECT * FROM produit ORDER BY prix ASC LIMIT 0,30
Selection en PHP Introduction aux bases des données Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour Effectuer une recherche $query = SELECT c1,c2 FROM (...); ; $resultat = mysql_query($query); $nb = mysql_num_rows($resultat); while ($array = mysql_fetch_array($resultat)) { //Parcours des enregistrements //$array[ c1 ], $array[ c2 ]; }
INSERT INTO Introduction aux bases des données Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour INSERT INTO La requête SQL INSERT INTO permet d enregistrer des données. Syntaxe complète INSERT INTO table(champ1,champ2,...) VALUES (valeur1,valeur2,...) ; Possible de ne pas lister les champs (ordre par défaut). A éviter. Attention Ne pas oublier le type de colonne, la clef unique et les valeurs par défaut.
DELETE FROM Introduction aux bases des données Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour DELETE FROM La requête SQL DELETE FROM permet de supprimer des données. Syntaxe complète DELETE FROM table WHERE condition ; Intêret du champ id, pour supprimer un unique enregistrement : DELETE FROM table WHERE id = n;
UPDATE Introduction aux bases des données Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour UPDATE La requête SQL UPDATE permet de mettre à jour des données. Syntaxe complète UPDATE table SET champ1 = valeur1, champ2 = valeur2 (...) // WHERE condition ;
et en PHP? Introduction aux bases des données Connexion MySQL avec PHP Les requêtes de selection Insertion, suppression et mise à jour Modification d une base via PHP Il suffit d effectuer la requête via un mysql query mysql_query( UPDATE table WHERE couleur = "r" SET couleur = "rouge"; ); mysql_query( DELETE FROM table WHERE id = 1337; ); mysql_query( INSERT INTO table(c1) VALUES (v1); ); Récupération du nombre de modification de la dernière opération : mysql affected rows() ;
Sommaire 1 Introduction aux bases des données 2 3 4
Sommaire 1 Introduction aux bases des données 2 3 4
Introduction aux bases des données Synthèse SQL Le SQL est simple, on a vu le principal.
Introduction aux bases des données Synthèse SQL Le SQL est simple, on a vu le principal. Quelques clauses et commandes additionnelles existent.
Introduction aux bases des données Synthèse SQL Le SQL est simple, on a vu le principal. Quelques clauses et commandes additionnelles existent. Pour aller plus loin (requêtes préparées), utiliser PDO.
Introduction aux bases des données Synthèse PHP PHP est extrêmement riche, nous n en avons fait que la base.
Introduction aux bases des données Synthèse PHP PHP est extrêmement riche, nous n en avons fait que la base. Beaucoup de fonctions existantes. Documentation indispensable : // http://www.php.net/manual/fr/
Introduction aux bases des données Synthèse PHP PHP est extrêmement riche, nous n en avons fait que la base. Beaucoup de fonctions existantes. Documentation indispensable : // http://www.php.net/manual/fr/ Mais on on a les outils pour tout faire!
C est fini! Difficile de faire 4 langages en 6 heures.
C est fini! Difficile de faire 4 langages en 6 heures. Tous les outils pour faire un site d association, un outil de travail.
C est fini! Difficile de faire 4 langages en 6 heures. Tous les outils pour faire un site d association, un outil de travail. Pour aller plus loin, demandez nous (ou à Google). Des versions enrichies des slides seront mises à disposition. Et la semaine prochaine, formation LaTeX!