la 2ème partie de la présentation php

20

Upload: club-scientifique-de-lesi-cse

Post on 22-Dec-2014

389 views

Category:

Technology


1 download

DESCRIPTION

Initiation à PHP et MySQL by AMAROUCHE Youcef

TRANSCRIPT

Page 1: La 2ème partie de la présentation PHP
Page 2: La 2ème partie de la présentation PHP

Introduction

Page 3: La 2ème partie de la présentation PHP

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.

Page 4: La 2ème partie de la présentation PHP

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 »

Page 5: La 2ème partie de la présentation PHP

Introduction

Table : Utilisateurs

Numéro Pseudonyme Mot de Passe Email

0001 TOto 12345 [email protected]

0002 AyAdeXDlol 12345 [email protected]… … … …

Exemple:

Page 6: La 2ème partie de la présentation PHP

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)

Page 7: La 2ème partie de la présentation PHP

Les premiers pasNOTE : ON TRAVAILLE SOUS WAMP-SERVER

Page 8: La 2ème partie de la présentation PHP

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.

Page 9: La 2ème partie de la présentation PHP

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 ».

Page 10: La 2ème partie de la présentation PHP

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

Page 11: La 2ème partie de la présentation PHP

Et MySQL dans tout ça?COMMENT RÉCUPÉRER DES INFORMATIONS DEPUIS LA BDD

Page 12: La 2ème partie de la présentation PHP

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 :

Page 13: La 2ème partie de la présentation PHP

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

Page 14: La 2ème partie de la présentation PHP

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 ?>

Page 15: La 2ème partie de la présentation PHP

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); ?>

Page 16: La 2ème partie de la présentation PHP

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

Page 17: La 2ème partie de la présentation PHP

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.

Page 18: La 2ème partie de la présentation PHP

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

Page 19: La 2ème partie de la présentation PHP

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

Page 20: La 2ème partie de la présentation PHP

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 .