SlideShare une entreprise Scribd logo
Introduction
Introduction
Base de Données : ensemble de données structurées représentant une réalité perçue
Elles permettent de stocker de manière structurée diverses données et de facilement les
manipuler
La mise en œuvre des bases de données et leur manipulation se font grâce à un SGBD
Exemple de SGBD : MySQL, PostgreSQL, SQLlite …etc.
Introduction
Une base de données peut être vue comme suit:
◦ La « base », le tout qui va contenir les données, peut être assimilée à un dossier ou encore un
classeur
◦ Dans ce classeur, un certain nombre de fiches. Chaque fiche contient des données relatives à
un certain « objet ». Exemple : les données des utilisateurs (pseudonyme, mot de
passe, email …etc.). On appellera ces fiches : « tables »
◦ Chaque table se présente sous forme de tableau. Les colonnes seront appelées « champs » et
contiendront chacune une donnée précise (exemple: le pseudonyme). Les lignes seront
appelées « entrées »
Introduction
Table : Utilisateurs
Numéro Pseudonyme Mot de Passe Email
0001 TOto 12345 toto@live.com
0002 AyAdeXDlol 12345 trololol@yahoo.com
… … … …
Exemple:
Introduction
Le SGBD est le seul à pouvoir accéder à la base de données et le seul à pouvoir comprendre son
contenu.
Il faut donc impérativement passer par le SGBD pour pouvoir utiliser la base de données.
Pour se faire, on va gentiment le lui demander via ce qu’on appelle des « requêtes ». Pour qu’il
puisse comprendre, elles seront exprimées en utilisant un certain langage : le langage SQL
(Structured Query Language)
Les premiers pas
NOTE : ON TRAVAILLE SOUS WAMP-SERVER
Créer une base de données
Pour cela on utilisera PhpMyAdmin.
C’est un ensemble de pages en Php, offertes par WAMP server pour faciliter la
création d’une base de données.
Comment faire? suivez le guide.
Une clé primaire ??
Une clé primaire est ce qui va permettre d’identifier de manière unique une entrée dans une
table de la base de données.
Toute table doit obligatoirement avoir une clé primaire.
La clé primaire est exprimée grâce à un ou plusieurs champs de la table en question.
En général, on utilisera le champ « id » avec l’option « auto-increment ».
Quelques opérations avec
PhpMyAdmin
Modifier une table
Insérer dans une table
Supprimer une entrée d’une table
Vider une table
Ajouter une table
Supprimer une table
Et MySQL dans tout
ça?
COMMENT RÉCUPÉRER DES INFORMATIONS DEPUIS LA
BDD
Avant d’aller plus loin
Les SGBD ne sont pas directement accessibles : il faut passer par un intermédiaire comme PHP
( et puis même dans le cas contraire ça ne changerai rien)
Pour pouvoir utiliser une base de données, il faut d’abord s’y connecter. On aura besoin pour
cela de l’adresse du serveur où elle se trouve, d’un login et d’un mot de passe.
En Php, l’utilisation des bases de données se fait en faisant appel à des fonctions ayant :
Avant d’aller plus loin
◦ L'extension mysql_ : ce sont des fonctions qui permettent d'accéder à une base de données
MySQL. Leur nom commence toujours par mysql_.
◦ L'extension mysqli_ : ce sont des fonctions améliorées d'accès à MySQL. Elles proposent plus
de fonctionnalités et sont plus à jour.
◦ L'extension PDO : c'est un outil complet qui permet d'accéder à n'importe quel type de base
de données. On peut donc l'utiliser pour se connecter aussi bien à MySQL que PostgreSQL ou
Oracle.
REMARQUE : Pour notre part on utilisera mysql_ car plus simple pour commencer
Se connecter à la base de données
On utilisera pour cela la fonction php :
◦ Server : désigne le nom du serveur
◦ Login : le login qui permet d’accéder à la base de données
◦ Password : le mot de passe pour se connecter
Note : les paramètres sont tous des chaines de caractères
<? php
mysql_connect(server , login , password); // établir la connexion
mysql_select_db(dbname); // spécifier la base de données
?>
Récupérer des données
Pour récupérer des données depuis la base de données, on utilisera la requête SQL « SELECT »
Elle se présente sous la forme suivante :
SELECT « champs » FROM « table » « clause de selection »
La partie en souligné est optionnelle. Elle permet de filtrer les résultats
« champs » et « table » seront respectivement remplacés par les noms des champs à
récupérer et celui de la table depuis laquelle les récupérer
Pour pouvoir utiliser cette requête on fera appel à la fonction Php
(requête est une chaine de caractères contenant la requête SQL )
<? php
mysql_query(requête);
?>
Récupérer des données : les clauses
de sélection
WHERE
◦ Permet de ne sélectionner que les entrées répondant à un certain critère
◦ Exemple : SELECT * FROM utilisateurs WHERE age > 20
◦ Les critères de sélection suivant la clause WHERE sont des conditions pouvant être exprimées
grâce à des opérateurs logiques (AND , OR) et des opérateurs de comparaison
ORDER BY
◦ Permet d’ordonner les résultats obtenus selon la valeur d’un champ spécifique
◦ Exemple : SELECT * FROM utilisateurs ORDER BY age
◦ On peut indiquer que l’ordre doit être décroissant grâce au mot clé DESC que
l’on rajoute à la fin de la requête
Récupérer des données : les clauses
de sélection
LIMIT
◦ Permet de limiter le nombre de résultats retournés
◦ Exemple : SELECT * FROM utilisateurs LIMIT 0, 10 n’affichera que les 10
premiers resultats
◦ LIMIT 0, 20 : affiche les vingt premières entrées ;
◦ LIMIT 5, 10 : affiche de la sixième à la quinzième entrée ;
◦ LIMIT 10, 2 : affiche la onzième et la douzième entrée.
REMARQUE :
Quand utilisés tous à la fois, les mots clé précédent doivent
apparaitre dans l’ordre : where, order by, limit. Il y aura erreur sinon.
Insérer des données
Pour insérer des données, il faudra utiliser la requête SQL « INSERT »
Elle se présente sous plusieurs formes :
INSERT INTO « table » VALUES « entrée »
INSERT INTO « table » VALUES ( « entrée1 » , « entrée2 » , « entrée3 » … )
INSERT INTO « table »(préciser les champs concernés) VALUES « entrée(seul les champs précisés) »
INSERT INTO « table » SET « champ1=valeur1 » , « champ2=valeur2 » , « champ3=valeur3 » …
REMARQUES
◦ « entrée » est de la forme : (valeur_champ1 , valeur_champ2 , …)
◦ Dans la 1ere forme, les champs doivent être ordonnés de la même façon que dans la table
◦ La 2eme forme permet d’insérer plusieurs entrées en une fois
◦ Les deux dernières formes ne permettent pas d’insertions multiples
Modifier des données
La modification se fait grâce à la requête SQL « UPDATE »
« UPDATE » a la forme suivante
UPDATE « table » SET « champ_x=valeur_x » , « champ_y=valeur_y » … WHERE « condition »
Entre SET et WHERE on va préciser quels champs de la table vont être modifier ainsi que les
nouvelles valeurs qui vont leur être affectées.
WHERE est indispensable car permet de préciser quelles entrées de la table vont être modifiées.
Elle s’utilise de la même manière qu’avec SELECT
Supprimer des données
La suppression s’opère avec la requête SQL « DELETE »
DELETE FROM « table » WHERE « condition »
« table » est la table dans laquelle l’on va supprimer des données
WHERE est encore fois indispensable car elle permet de préciser quelle entrées
doivent être supprimées. Elle s’utilise de la même façon qu’avec SELECT et
UPDATE .

Contenu connexe

Similaire à presentationatelierphpprt2-140314143938-phpapp02.pdf

chapitre 1 Android 2.pptx
chapitre 1 Android 2.pptxchapitre 1 Android 2.pptx
Les03.ppt
Les03.pptLes03.ppt
Les03.ppt
zidane39
 
Mpdf 3
Mpdf 3Mpdf 3
Mpdf 3
Moez Moezm
 
resume-theorique-m106-partie3-0903-1-622f07613b825.pdf
resume-theorique-m106-partie3-0903-1-622f07613b825.pdfresume-theorique-m106-partie3-0903-1-622f07613b825.pdf
resume-theorique-m106-partie3-0903-1-622f07613b825.pdf
FootballLovers9
 
Php1
Php1Php1
Les commandes sql
Les commandes sqlLes commandes sql
Les commandes sqlHanfi Akram
 
Présentaion sur le modéle JDBC JEE .pptx
Présentaion sur le modéle JDBC JEE .pptxPrésentaion sur le modéle JDBC JEE .pptx
Présentaion sur le modéle JDBC JEE .pptx
salmachtioui1
 
Chapitre5.pdf
Chapitre5.pdfChapitre5.pdf
Chapitre5.pdf
Moez Moezm
 
INF240 - Bases de données DUT SRC1 - Cours 3
INF240 - Bases de données DUT SRC1 - Cours 3INF240 - Bases de données DUT SRC1 - Cours 3
INF240 - Bases de données DUT SRC1 - Cours 3PGambette
 
Présentation langage de programmationHive.pdf
Présentation langage de programmationHive.pdfPrésentation langage de programmationHive.pdf
Présentation langage de programmationHive.pdf
khalidmoussaid4
 
Java Database Connectivity
Java Database ConnectivityJava Database Connectivity
Java Database Connectivity
Korteby Farouk
 
Projet Bases de données avancées Multimédia.
Projet Bases de données  avancées Multimédia.Projet Bases de données  avancées Multimédia.
Projet Bases de données avancées Multimédia.
emnahkiri1
 
Le langage sql
Le langage sqlLe langage sql
Le langage sql
Abderrahim Aitali
 
Tpdba1
Tpdba1Tpdba1
Tpdba1infcom
 
Les05.ppt
Les05.pptLes05.ppt
Les05.ppt
zidane39
 
Sql &amp; excel
Sql &amp; excelSql &amp; excel
Sql &amp; excel
Dominique GAYTE - NoToS
 
Les commandes sql
Les commandes sqlLes commandes sql
Les commandes sql
Hanfi Akram
 
1425583156389.pptx
1425583156389.pptx1425583156389.pptx
1425583156389.pptx
tirike6016
 

Similaire à presentationatelierphpprt2-140314143938-phpapp02.pdf (20)

chapitre 1 Android 2.pptx
chapitre 1 Android 2.pptxchapitre 1 Android 2.pptx
chapitre 1 Android 2.pptx
 
Les03.ppt
Les03.pptLes03.ppt
Les03.ppt
 
Mpdf 3
Mpdf 3Mpdf 3
Mpdf 3
 
resume-theorique-m106-partie3-0903-1-622f07613b825.pdf
resume-theorique-m106-partie3-0903-1-622f07613b825.pdfresume-theorique-m106-partie3-0903-1-622f07613b825.pdf
resume-theorique-m106-partie3-0903-1-622f07613b825.pdf
 
Php1
Php1Php1
Php1
 
Les commandes sql
Les commandes sqlLes commandes sql
Les commandes sql
 
Présentaion sur le modéle JDBC JEE .pptx
Présentaion sur le modéle JDBC JEE .pptxPrésentaion sur le modéle JDBC JEE .pptx
Présentaion sur le modéle JDBC JEE .pptx
 
Chapitre5.pdf
Chapitre5.pdfChapitre5.pdf
Chapitre5.pdf
 
INF240 - Bases de données DUT SRC1 - Cours 3
INF240 - Bases de données DUT SRC1 - Cours 3INF240 - Bases de données DUT SRC1 - Cours 3
INF240 - Bases de données DUT SRC1 - Cours 3
 
Présentation langage de programmationHive.pdf
Présentation langage de programmationHive.pdfPrésentation langage de programmationHive.pdf
Présentation langage de programmationHive.pdf
 
Java Database Connectivity
Java Database ConnectivityJava Database Connectivity
Java Database Connectivity
 
Projet Bases de données avancées Multimédia.
Projet Bases de données  avancées Multimédia.Projet Bases de données  avancées Multimédia.
Projet Bases de données avancées Multimédia.
 
Le langage sql
Le langage sqlLe langage sql
Le langage sql
 
Le langage sql
Le langage sqlLe langage sql
Le langage sql
 
Tpdba1
Tpdba1Tpdba1
Tpdba1
 
Les05.ppt
Les05.pptLes05.ppt
Les05.ppt
 
Sql &amp; excel
Sql &amp; excelSql &amp; excel
Sql &amp; excel
 
Les commandes sql
Les commandes sqlLes commandes sql
Les commandes sql
 
Cours sql-sh-
Cours sql-sh-Cours sql-sh-
Cours sql-sh-
 
1425583156389.pptx
1425583156389.pptx1425583156389.pptx
1425583156389.pptx
 

Plus de RihabBENLAMINE

Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdfTutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
RihabBENLAMINE
 
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdfCM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
RihabBENLAMINE
 
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
RihabBENLAMINE
 
coursphp-chap3-230321082859-121d6678.pptx
coursphp-chap3-230321082859-121d6678.pptxcoursphp-chap3-230321082859-121d6678.pptx
coursphp-chap3-230321082859-121d6678.pptx
RihabBENLAMINE
 
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdfCours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
RihabBENLAMINE
 
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdfVirtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
RihabBENLAMINE
 
416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf
RihabBENLAMINE
 
Interace Utilisateur.pdf
Interace Utilisateur.pdfInterace Utilisateur.pdf
Interace Utilisateur.pdf
RihabBENLAMINE
 
Firebase.pdf
Firebase.pdfFirebase.pdf
Firebase.pdf
RihabBENLAMINE
 
Bases de données sous Android.pdf
Bases de données sous Android.pdfBases de données sous Android.pdf
Bases de données sous Android.pdf
RihabBENLAMINE
 
Les Activités.pdf
Les Activités.pdfLes Activités.pdf
Les Activités.pdf
RihabBENLAMINE
 
Environnement Android.pdf
Environnement Android.pdfEnvironnement Android.pdf
Environnement Android.pdf
RihabBENLAMINE
 
coursphp-230411142526-784b67e9.pdf
coursphp-230411142526-784b67e9.pdfcoursphp-230411142526-784b67e9.pdf
coursphp-230411142526-784b67e9.pdf
RihabBENLAMINE
 
0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf
RihabBENLAMINE
 
introAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfintroAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdf
RihabBENLAMINE
 
016834638650_suitechap1.pptx
016834638650_suitechap1.pptx016834638650_suitechap1.pptx
016834638650_suitechap1.pptx
RihabBENLAMINE
 
PHP_intro.pdf
PHP_intro.pdfPHP_intro.pdf
PHP_intro.pdf
RihabBENLAMINE
 
Chapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdfChapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdf
RihabBENLAMINE
 
chapitre-2.pptx.pdf
chapitre-2.pptx.pdfchapitre-2.pptx.pdf
chapitre-2.pptx.pdf
RihabBENLAMINE
 
p01b_portelogique_boole.pdf
p01b_portelogique_boole.pdfp01b_portelogique_boole.pdf
p01b_portelogique_boole.pdf
RihabBENLAMINE
 

Plus de RihabBENLAMINE (20)

Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdfTutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
Tutoriel-PHP-Introduction-à-la-POoooooooooooO.pdf
 
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdfCM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
CM_PHP_PDOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.pdf
 
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
10_interfacesjavaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.pdf
 
coursphp-chap3-230321082859-121d6678.pptx
coursphp-chap3-230321082859-121d6678.pptxcoursphp-chap3-230321082859-121d6678.pptx
coursphp-chap3-230321082859-121d6678.pptx
 
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdfCours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
Cours3-PHPfgdwfwdffhddfbwdfwdfwdfwdfwfw.pdf
 
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdfVirtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
Virtualisation & Cloud. Cloud Computing. Iset Siliana RSI3..pdf
 
416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf416769859360_chap2fondementdesreseaux2023.pdf
416769859360_chap2fondementdesreseaux2023.pdf
 
Interace Utilisateur.pdf
Interace Utilisateur.pdfInterace Utilisateur.pdf
Interace Utilisateur.pdf
 
Firebase.pdf
Firebase.pdfFirebase.pdf
Firebase.pdf
 
Bases de données sous Android.pdf
Bases de données sous Android.pdfBases de données sous Android.pdf
Bases de données sous Android.pdf
 
Les Activités.pdf
Les Activités.pdfLes Activités.pdf
Les Activités.pdf
 
Environnement Android.pdf
Environnement Android.pdfEnvironnement Android.pdf
Environnement Android.pdf
 
coursphp-230411142526-784b67e9.pdf
coursphp-230411142526-784b67e9.pdfcoursphp-230411142526-784b67e9.pdf
coursphp-230411142526-784b67e9.pdf
 
0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf0519-pdf-php-bases-initiation.pdf
0519-pdf-php-bases-initiation.pdf
 
introAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfintroAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdf
 
016834638650_suitechap1.pptx
016834638650_suitechap1.pptx016834638650_suitechap1.pptx
016834638650_suitechap1.pptx
 
PHP_intro.pdf
PHP_intro.pdfPHP_intro.pdf
PHP_intro.pdf
 
Chapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdfChapitre 04-B - Langages de consultation.pdf
Chapitre 04-B - Langages de consultation.pdf
 
chapitre-2.pptx.pdf
chapitre-2.pptx.pdfchapitre-2.pptx.pdf
chapitre-2.pptx.pdf
 
p01b_portelogique_boole.pdf
p01b_portelogique_boole.pdfp01b_portelogique_boole.pdf
p01b_portelogique_boole.pdf
 

Dernier

Actu du SEO - Matin Népérien Lille - Agence Neper
Actu du SEO - Matin Népérien Lille - Agence NeperActu du SEO - Matin Népérien Lille - Agence Neper
Actu du SEO - Matin Népérien Lille - Agence Neper
Philippe YONNET
 
Les logiciels libres : une opportunite pour votre entreprise?
Les logiciels libres : une opportunite pour votre entreprise?Les logiciels libres : une opportunite pour votre entreprise?
Les logiciels libres : une opportunite pour votre entreprise?
Asher256
 
Stratégies pour accroître la visibilité et l'engagement de votre blog
Stratégies pour accroître la visibilité et l'engagement de votre blogStratégies pour accroître la visibilité et l'engagement de votre blog
Stratégies pour accroître la visibilité et l'engagement de votre blog
Asher256
 
Google - les nouvelles regles du jeu.pptx
Google - les nouvelles regles du jeu.pptxGoogle - les nouvelles regles du jeu.pptx
Google - les nouvelles regles du jeu.pptx
Philippe YONNET
 
Netflix, OCS et Disney avec ou sans engagement
Netflix, OCS et Disney avec ou sans engagementNetflix, OCS et Disney avec ou sans engagement
Netflix, OCS et Disney avec ou sans engagement
ABO IPTV PREMIUM
 
Utiliser les outils numériques créatifs pour valoriser sa médiathèque
Utiliser les outils numériques créatifs pour valoriser sa médiathèqueUtiliser les outils numériques créatifs pour valoriser sa médiathèque
Utiliser les outils numériques créatifs pour valoriser sa médiathèque
cspirin
 
Requetes ecommerce - les différences US vs Europe.pptx
Requetes ecommerce - les différences US vs Europe.pptxRequetes ecommerce - les différences US vs Europe.pptx
Requetes ecommerce - les différences US vs Europe.pptx
Philippe YONNET
 

Dernier (7)

Actu du SEO - Matin Népérien Lille - Agence Neper
Actu du SEO - Matin Népérien Lille - Agence NeperActu du SEO - Matin Népérien Lille - Agence Neper
Actu du SEO - Matin Népérien Lille - Agence Neper
 
Les logiciels libres : une opportunite pour votre entreprise?
Les logiciels libres : une opportunite pour votre entreprise?Les logiciels libres : une opportunite pour votre entreprise?
Les logiciels libres : une opportunite pour votre entreprise?
 
Stratégies pour accroître la visibilité et l'engagement de votre blog
Stratégies pour accroître la visibilité et l'engagement de votre blogStratégies pour accroître la visibilité et l'engagement de votre blog
Stratégies pour accroître la visibilité et l'engagement de votre blog
 
Google - les nouvelles regles du jeu.pptx
Google - les nouvelles regles du jeu.pptxGoogle - les nouvelles regles du jeu.pptx
Google - les nouvelles regles du jeu.pptx
 
Netflix, OCS et Disney avec ou sans engagement
Netflix, OCS et Disney avec ou sans engagementNetflix, OCS et Disney avec ou sans engagement
Netflix, OCS et Disney avec ou sans engagement
 
Utiliser les outils numériques créatifs pour valoriser sa médiathèque
Utiliser les outils numériques créatifs pour valoriser sa médiathèqueUtiliser les outils numériques créatifs pour valoriser sa médiathèque
Utiliser les outils numériques créatifs pour valoriser sa médiathèque
 
Requetes ecommerce - les différences US vs Europe.pptx
Requetes ecommerce - les différences US vs Europe.pptxRequetes ecommerce - les différences US vs Europe.pptx
Requetes ecommerce - les différences US vs Europe.pptx
 

presentationatelierphpprt2-140314143938-phpapp02.pdf

  • 1.
  • 3. Introduction Base de Données : ensemble de données structurées représentant une réalité perçue Elles permettent de stocker de manière structurée diverses données et de facilement les manipuler La mise en œuvre des bases de données et leur manipulation se font grâce à un SGBD Exemple de SGBD : MySQL, PostgreSQL, SQLlite …etc.
  • 4. Introduction Une base de données peut être vue comme suit: ◦ La « base », le tout qui va contenir les données, peut être assimilée à un dossier ou encore un classeur ◦ Dans ce classeur, un certain nombre de fiches. Chaque fiche contient des données relatives à un certain « objet ». Exemple : les données des utilisateurs (pseudonyme, mot de passe, email …etc.). On appellera ces fiches : « tables » ◦ Chaque table se présente sous forme de tableau. Les colonnes seront appelées « champs » et contiendront chacune une donnée précise (exemple: le pseudonyme). Les lignes seront appelées « entrées »
  • 5. Introduction Table : Utilisateurs Numéro Pseudonyme Mot de Passe Email 0001 TOto 12345 toto@live.com 0002 AyAdeXDlol 12345 trololol@yahoo.com … … … … Exemple:
  • 6. Introduction Le SGBD est le seul à pouvoir accéder à la base de données et le seul à pouvoir comprendre son contenu. Il faut donc impérativement passer par le SGBD pour pouvoir utiliser la base de données. Pour se faire, on va gentiment le lui demander via ce qu’on appelle des « requêtes ». Pour qu’il puisse comprendre, elles seront exprimées en utilisant un certain langage : le langage SQL (Structured Query Language)
  • 7. Les premiers pas NOTE : ON TRAVAILLE SOUS WAMP-SERVER
  • 8. Créer une base de données Pour cela on utilisera PhpMyAdmin. C’est un ensemble de pages en Php, offertes par WAMP server pour faciliter la création d’une base de données. Comment faire? suivez le guide.
  • 9. Une clé primaire ?? Une clé primaire est ce qui va permettre d’identifier de manière unique une entrée dans une table de la base de données. Toute table doit obligatoirement avoir une clé primaire. La clé primaire est exprimée grâce à un ou plusieurs champs de la table en question. En général, on utilisera le champ « id » avec l’option « auto-increment ».
  • 10. Quelques opérations avec PhpMyAdmin Modifier une table Insérer dans une table Supprimer une entrée d’une table Vider une table Ajouter une table Supprimer une table
  • 11. Et MySQL dans tout ça? COMMENT RÉCUPÉRER DES INFORMATIONS DEPUIS LA BDD
  • 12. Avant d’aller plus loin Les SGBD ne sont pas directement accessibles : il faut passer par un intermédiaire comme PHP ( et puis même dans le cas contraire ça ne changerai rien) Pour pouvoir utiliser une base de données, il faut d’abord s’y connecter. On aura besoin pour cela de l’adresse du serveur où elle se trouve, d’un login et d’un mot de passe. En Php, l’utilisation des bases de données se fait en faisant appel à des fonctions ayant :
  • 13. Avant d’aller plus loin ◦ L'extension mysql_ : ce sont des fonctions qui permettent d'accéder à une base de données MySQL. Leur nom commence toujours par mysql_. ◦ L'extension mysqli_ : ce sont des fonctions améliorées d'accès à MySQL. Elles proposent plus de fonctionnalités et sont plus à jour. ◦ L'extension PDO : c'est un outil complet qui permet d'accéder à n'importe quel type de base de données. On peut donc l'utiliser pour se connecter aussi bien à MySQL que PostgreSQL ou Oracle. REMARQUE : Pour notre part on utilisera mysql_ car plus simple pour commencer
  • 14. Se connecter à la base de données On utilisera pour cela la fonction php : ◦ Server : désigne le nom du serveur ◦ Login : le login qui permet d’accéder à la base de données ◦ Password : le mot de passe pour se connecter Note : les paramètres sont tous des chaines de caractères <? php mysql_connect(server , login , password); // établir la connexion mysql_select_db(dbname); // spécifier la base de données ?>
  • 15. Récupérer des données Pour récupérer des données depuis la base de données, on utilisera la requête SQL « SELECT » Elle se présente sous la forme suivante : SELECT « champs » FROM « table » « clause de selection » La partie en souligné est optionnelle. Elle permet de filtrer les résultats « champs » et « table » seront respectivement remplacés par les noms des champs à récupérer et celui de la table depuis laquelle les récupérer Pour pouvoir utiliser cette requête on fera appel à la fonction Php (requête est une chaine de caractères contenant la requête SQL ) <? php mysql_query(requête); ?>
  • 16. Récupérer des données : les clauses de sélection WHERE ◦ Permet de ne sélectionner que les entrées répondant à un certain critère ◦ Exemple : SELECT * FROM utilisateurs WHERE age > 20 ◦ Les critères de sélection suivant la clause WHERE sont des conditions pouvant être exprimées grâce à des opérateurs logiques (AND , OR) et des opérateurs de comparaison ORDER BY ◦ Permet d’ordonner les résultats obtenus selon la valeur d’un champ spécifique ◦ Exemple : SELECT * FROM utilisateurs ORDER BY age ◦ On peut indiquer que l’ordre doit être décroissant grâce au mot clé DESC que l’on rajoute à la fin de la requête
  • 17. Récupérer des données : les clauses de sélection LIMIT ◦ Permet de limiter le nombre de résultats retournés ◦ Exemple : SELECT * FROM utilisateurs LIMIT 0, 10 n’affichera que les 10 premiers resultats ◦ LIMIT 0, 20 : affiche les vingt premières entrées ; ◦ LIMIT 5, 10 : affiche de la sixième à la quinzième entrée ; ◦ LIMIT 10, 2 : affiche la onzième et la douzième entrée. REMARQUE : Quand utilisés tous à la fois, les mots clé précédent doivent apparaitre dans l’ordre : where, order by, limit. Il y aura erreur sinon.
  • 18. Insérer des données Pour insérer des données, il faudra utiliser la requête SQL « INSERT » Elle se présente sous plusieurs formes : INSERT INTO « table » VALUES « entrée » INSERT INTO « table » VALUES ( « entrée1 » , « entrée2 » , « entrée3 » … ) INSERT INTO « table »(préciser les champs concernés) VALUES « entrée(seul les champs précisés) » INSERT INTO « table » SET « champ1=valeur1 » , « champ2=valeur2 » , « champ3=valeur3 » … REMARQUES ◦ « entrée » est de la forme : (valeur_champ1 , valeur_champ2 , …) ◦ Dans la 1ere forme, les champs doivent être ordonnés de la même façon que dans la table ◦ La 2eme forme permet d’insérer plusieurs entrées en une fois ◦ Les deux dernières formes ne permettent pas d’insertions multiples
  • 19. Modifier des données La modification se fait grâce à la requête SQL « UPDATE » « UPDATE » a la forme suivante UPDATE « table » SET « champ_x=valeur_x » , « champ_y=valeur_y » … WHERE « condition » Entre SET et WHERE on va préciser quels champs de la table vont être modifier ainsi que les nouvelles valeurs qui vont leur être affectées. WHERE est indispensable car permet de préciser quelles entrées de la table vont être modifiées. Elle s’utilise de la même manière qu’avec SELECT
  • 20. Supprimer des données La suppression s’opère avec la requête SQL « DELETE » DELETE FROM « table » WHERE « condition » « table » est la table dans laquelle l’on va supprimer des données WHERE est encore fois indispensable car elle permet de préciser quelle entrées doivent être supprimées. Elle s’utilise de la même façon qu’avec SELECT et UPDATE .