Nous allons maintenant faire des manipulations sur une base de données. Pour cela nous allons
nous servir de PhpMyAdmin qui est livré avec wamp, et qui est facile à utiliser.
PhpMyAdmin est un ensemble de pages PHP. Ce n'est pas un programme, mais des pages PHP toutes
prêtes dont on se sert pour gagner du temps.
La première chose à faire, c'est d'ouvrir PhpMyAdmin.
Démarrez WAMP, faites un clic gauche sur l'icône de la barre des tâches et
allez dans "phpMyAdmin".
Créer une base de données
L'accueil de PhpMyAdmin ressemble à ceci :
On a deux parties importantes que j’ai marquées avec les numéros en bleu.
1. la liste de vos BDD Le nombre entre parenthèses, c'est le nombre de tables
qu'il y a dans la base.
On a donc 2 bases : information_schema, qui contient 28 tables, et mysql,
qui contient elle 21 tables.(peut être que vous n'avez pas les même nombre
c'est suivant la version)
2. Créer une base de données: pour créer une nouvelle base de données, tapez un nom dans le
champ de formulaire à droite, cliquez sur "Créer" et C'est fait.
Ne touchez pas au 2 bases : information_schema, et mysql, elles servent au fonctionnement
interne de mysql.
Nous allons créer une nouvelle base "test".Tapez test dans le champ de saisie cliquer
sur créer.
Vous aurez l’écran suivant :
On va créer une table dans la base.
Dans le champ "Créer une nouvelle table sur la base test", tapez le nom "news" et le nombre
de champs "3" :
Cliquez sur "Exécuter".
Vous avez maintenant un formulaire à remplir pour indiquer les noms des champs et
les données qu'ils peuvent contenir.
On va donc créer 3 champs pour cette table :
* id : nous allons créer un champ appelé "id". C'est le numéro d'identification. Grâce à lui,
toutes vos entrées seront numérotées. Il y aura ainsi la news n°1, n°2, etc...une entrée
c’est une ligne dans la table.
* titre : ce champ contiendra le titre de la news.
* contenu : ce champ contiendra la news en elle-même.
Alors dans le premier champ tapez id et dans la liste déroulante en dessous
choisissez mediumint.
Dans le second champ tapez titre et dans la liste déroulante en dessous choisissez text.
Et en fin dans le troisième tapez contenu et dans la liste déroulante en dessous choisissez
aussi text.
Il faut donc définir quel type de données contiendra le champ. Un champ peut contenir du texte,
des nombres, des dates etc...
Les différents types de données vous les avez dans la liste déroulante type, mais voici
l’explication de quelques types les plus utilisés :
* INT : nombre entier. Il y a plusieurs, selon la grandeur des nombres que peut comporter.
Dans l'ordre, il y a :
TINYINT (très petit, inférieur ou égale à 255 ),
SMALLINT (jusqu'à 30 000),
MEDIUMINT (8 000 000),
INT (2 000 000 000),
BIGINT (très grand).
* TEXT : du texte. Là encore il y a plusieurs variantes.
* DATE : date dont la forme peut être : "YYYY-MM-DD", "YY-MM-DD" ou "YYMMDD"
* TIME : l'heure, dont la forme peut être : "HH:MM:SS" ou "HHMMSS" ou "HHMM" ou "HH".
* DATETIME : mélange la date et l'heure, dont la forme peut être : "YYYY-MM-DD HH:MM:SS"
* BLOB : plus particulier. Il permet de stocker des fichiers dans la base de données.
Pour le premier champ, id, cochez "A.I." qui signifie "auto_increment" , et choisissez "Primary"
pour les options d'Index, ça accélèrera les recherches dans votre table.
Cliquez enfin sur "Sauvegarder" en bas.
Nous allons remplir la table et créer notre première entrée (c’est à dire ligne).
Cliquez sur l’anglet insérer.
Ne rien mettre pour id car il est automatique.
Pour le titre tapez le titre que vous voulez par exemple : ma première news.
Pour le contenu tapez le texte de votre news par exemple : c’est ma première news je suis heureux.
Cliquez sur exécuter.
Refaites la même chose 2 ou 3 fois pour avoir plusieurs entrée si vous voulez.
Pour afficher le contenu de votre table cliquez sur l’onglet afficher ou sur la table news à droite.
Vous pouvez modifier votre news en cliquant sur l’icône en forme de crayon. Ou supprimer en cliquant
sur l’icône en croix rouge etc. …
Nous allons expliquer les 6 onglets suivants :
* SQL
* Importer
* Exporter
* Opérations
* Vider
* Supprimer
Cliquer sur l’onglet SQL. Vous avez ça :
Ici vous pouvez exécuter ce que l'on appelle des requêtes SQL pour demander à Mysql de faire
quelque chose.
Dans la grande zone de texte, vous pouvez taper des requêtes SQL. Par exemple ici on a :
SELECT * FROM `news` WHERE 1
Cela signifie : "Afficher tout le contenu de la table 'news'". Nous apprendrons ce langage
SQL tout au long de ce cours.
L’onglet "Exporter". C'est ici que vous allez pouvoir récupérer votre base de données sur le
disque dur sous forme de fichier texte.
On peut s'en servir pour deux choses :
* Transmettre votre base de données sur Internet : pour le moment, votre base de données
se trouve sur votre disque dur. Mais si vous êtes hébergés sur Internet, on va utiliser
ce fichier généré pour "reconstruire" la base de données. Ainsi, sur Internet vous aurez
la même base de données et votre site web pourra l'utiliser !
* Faire une copie de sauvegarde de la base de données : si vous faites une bêtise ou
qu'un hacker détruit toutes les informations sur votre site (dont la base de données),
vous serez bien content d'avoir une copie de secours sur votre disque dur.
Cliquez sur Importer
Dans la page qui s'affiche, vous pouvez envoyer un fichier de requêtes SQL
(généralement un fichier .sql) à MySQL pour qu'il les exécute.
Seul le premier champ en haut devrait nous intéresser : il nous permet d'indiquer un fichier
sur notre disque dur contenant des requêtes SQL à exécuter
(le fichier qu’on a créé avec exporter par exemple).
Cliquez sur Opérations
Vous pouvez faire ici diverses opérations sur votre table.
Je ne vais pas les énumérer une à une, ni vous expliquer comment elles fonctionnent vu que c'est
très simple.
Sachez simplement que vous pourriez avoir besoin de :
* Changer le nom de la table : indiquez le nouveau nom pour cette table.
* Déplacer la table vers : si vous voulez mettre cette table dans une
autre base de données.
* Copier la table : faire une copie de la table, dans une autre base ou dans la même
(attention, dans ce cas il faudra qu'elle ait un nom différent).
* Optimiser la table : à force d'utiliser une table, surtout si elle est grosse,
on finit par avoir des "pertes" qui font que la table n'est plus bien organisée.
Un clic là-dessus et c'est ré-arrangé.
Vider
Vide tout le contenu de la table. Toutes les entrées vont disparaître,
seule la structure de la table restera
Supprimer
Pour supprimer la totalité de la table (structure + données), cliquez sur cet onglet.
Là encore, réfléchissez-y à deux fois avant de tout supprimer, car vous ne pourrez rien
récupérer par la suite.
En fin comme vous n’avez pas encor de BDD pour de vrais, n’hésitez pas à tester les différentes
options pour voir ce que ça donne.
Lire des données
Dans ce chapitre nous allons apprendre à lire des données dans une base de données.
C’est un chapitre très important, et donc je vous demande de faire très attention.
Connexion à la BDD
Pour pouvoir travailler avec la base de données, il faut d'abord s'y connecter.
Je vous rappelle que PHP doit faire l'intermédiaire entre vous et MySQL.
Mais PHP ne peut pas dire à MySQL dès le début "Récupère-moi ces valeurs". En effet, MySQL
demande d'abord un nom d'utilisateur et un mot de passe. S'il ne faisait pas ça, tout le monde
pourrait accéder à votre BDD et lire les informations qu'il y a dedans.
Il va donc falloir que PHP s'authentifie, on dit qu'il établit une connexion avec MySQL.
Une fois que la connexion sera établie, vous pourrez faire n'importe quelle opération sur
votre base de données.
La connexion
Pour vous connecter, vous utiliserez une fonction PHP : mysql_connect.
Cette fonction a besoin de 3 arguments qu'il vous faudra renseigner :
* Le nom de l'hôte : c'est l'IP de l'ordinateur où MySQL est installé. Le plus souvent,
MySQL est installé sur le même ordinateur que PHP. Dans ce cas, mettez la valeur "localhost"
et ça marchera.
* Le login : ça permet de vous identifier. Renseignez-vous auprès de votre hébergeur pour
le connaître. Le plus souvent c'est le même login que vous utilisez pour le FTP.
* Le mot de passe : là encore, il y a 99% de chances pour que le mot de passe soit le
même que celui que vous utilisez pour accéder au FTP.
On va supposer que :
Le nom de l'hôte est : "localhost"
Le login est : "carabde"
Le mon mot de passe est : "22Fev1987".
Le code suivant permet d'établir une connexion à MySQL :
<?php
mysql_connect("localhost", " carabde", "22Fev1987");
?>
Pour vous connecter à MySQL avec WAMP (si vous faites des tests sur votre propre ordinateur),
vous devez mettre l'hôte "localhost", le login "root", et pas de mot de passe.
C'est-à-dire :
<?php
mysql_connect("localhost", "root", "");
?>
Le choix de la base
Il faut maintenant sélectionner la base de données sur laquelle vous allez travailler.
Souvent, une seule base de données suffit.
Demandez à votre hébergeur le nom de la base qui a été créée
(souvent c'est le même nom que votre login MySQL).
La fonction qui permet de sélectionner la BDD est : mysql_select_db
En temps normal, vous n'aurez besoin d'indiquer qu'un paramètre : le nom de la base.
Par exemple, si ma base s'appelle " carabde ":
<?php
mysql_connect("localhost", " carabde", "22Fev1987");// Connexion à MySQL
mysql_select_db("carabde"); // Sélection de la base carabde
?>
Vous vous êtes connectés, vous avez choisi votre base de données, vous pouvez
commencer votre travail.
Mais une fois que vous avez fini de travailler sur votre BDD, il faut vous déconnecter.
Pour se déconnecter, c'est tout bête : mysql_close
Code:
<?php
mysql_connect("localhost", " carabde", "22Fev1987");// Connexion à MySQL
mysql_select_db("carabde"); // Sélection de la base carabde
// On est connectés, on peut travailler sur la BDD
// On a fini de travailler, on ferme la connexion :
mysql_close(); // Déconnexion de MySQL
?>
Le code source précédent n'affiche rien à l'écran si tout se passe bien.
Si la connexion a échoué, vous aurez un message d'erreur. Dans ce cas c'est que votre login,
mot de passe ou nom d'hôte n'est pas bon.
Récupérer les données
Normalement, quand on crée un site, on doit d'abord mettre des données, puis après on les lit.
Nous allons apprendre à lire des données, et après à les écrire dans la BDD.
Il nous faudrait une base de données "toute prête" qui servirait de support pour travailler.
Nous allons en créer une.
Créez une table que vous nommez visiteurs suivant les données suivantes :
Champ Type Null Défaut
id mediumint(9) Oui NULL
nom text Oui NULL
prenom text Oui NULL
age int(11) Oui NULL
paye text Oui NULL
sexe text Oui NULL
date_derniere_visite date Oui NULL
Puis en cliquant sur l’onglet insérer remplissez votre table par les entrées suivantes :
Ne mettez rien dans le champ id il sera rempli automatiquement :
Nom prenom age paye sexe date derniere visite
Bouchard Ive 35 France Homme 2001-01-12
Carlos Robert 19 France Homme 2001-02-12
Karami Brahim 25 Maroc Homme 2001-02-25
Gamra Abdellah 27 Maroc Homme 2001-12-30
Dubois caterine 28 France Femme 2001-02-25
Le noire george 30 France Homme 2001-03-27
Baba Felixe 20 Belgique Homme 2001-04-29
Khali Ali 24 Belgique Homme 2001-05-30
Roben georginho 25 Espagne Homme 2001-10-04
Adriano Ibra 30 Italie Homme 2001-11-22
Zanity Albert 29 Suise Homme 2001-06-27
Elano Curva 33 Belgique Homme 2001-07-19
Faire une requête
Vous pouvez aussi créer votre table en utilisant des requêtes pour cela :
Cliquez sur l’onglet SQL vous aurez une fenêtre comme suit
Dans la fenêtre Exécuter une ou des requêtes sur la base ma_base
Tapez les deux requetes suivantes :
Requête pour créer la table visiteurs :
Code de la requete:
CREATE TABLE IF NOT EXISTS `visiteurs` (
`id` mediumint(9) NOT NULL AUTO_INCREMENT,
`nom` text NOT NULL,
`prenom` text NOT NULL,
`age` int(11) NOT NULL,
`paye` text NOT NULL,
`sexe` text NOT NULL,
`date_derniere_visite` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=13 ;
Requête pour remplir la table visiteurs avec les entrées attention l’ordre ici est
important pour ne pas mélanger les champs :
Code de la requete:
INSERT INTO `visiteurs` (`id`, `nom`, `prenom`, `age`, `paye`, `sexe`, `date_derniere_visite`)
VALUES(1, 'Bouchard', 'Ive', 35, 'France', 'Homme', '2001-01-12'),
(2, 'Carlos', 'Robert', 19, 'France', 'Homme', '2001-02-12'),
(3, 'Karami', 'Brahim', 25, 'Maroc', 'Homme', '2001-02-25'),
(4, 'Gamra', 'Abdellah', 27, 'Maroc', 'Homme', '2001-12-30'),
(5, 'Dubois', 'caterine', 28, 'France', 'Femme', '2001-02-25'),
(6, 'Le noire', 'george', 30, 'France', 'Homme', '2001-03-27'),
(7, 'Baba', 'Felixe', 20, 'Belgique', 'Homme', '2001-04-29'),
(8, 'Khali', 'Ali', 24, 'Belgique', 'Homme', '2001-05-30'),
(9, 'Roben', 'georginho', 25, 'Espagne', 'Homme', '2001-10-04'),
(10, 'Adriano', 'Ibra', 30, 'Italie', 'Homme', '2001-11-22'),
(11, 'Zanity', 'Albert', 29, 'Suise', 'Homme', '2001-06-27'),
(12, 'Elano', 'Curva', 33, 'Belgique', 'Homme', '2001-07-19');
Quelque explication des codes des requêtes :
On parle donc en SQL
CREATE TABLE IF NOT EXISTS veut dire créer la table si elle n’existe pas.
INSERT INTO veut dire insérer dans la table.
On va demander quelque chose à MySQL. On va encor parler en "SQL" !
On va faire ce qu'on appelle une requête. Et demander à MySQL de nous dire tout ce que
contient la table "visiteurs".
Nous allons nous servir de la fonction PHP : mysql_query (query veut dire requête).
* Cette fonction prend un paramètre : ce que PHP doit aller dire à MySQL.
* Elle renvoie une valeur, il faut donc qu'une variable récupère ce que MySQL
nous a répondu.
On fera tout le temps comme ça :
Code :
<?php
$reponse = mysql_query("Tapez votre requête SQL ici");
?>
Code SQL:
SELECT * FROM visiteurs
Ceci veut dire : "Prendre tout ce qu'il y a dans la table "visiteurs".
Les termes de cette requête :
1 SELECT : Ca demande à MySQL d'afficher ce que contient une table. (En langage SQL,
le premier mot indique quel type d'opération doit faire MySQL.)
2 * : après le SELECT, on doit indiquer les champs que MySQL doit récupérer dans la
table.
Si on ne veut que les champs "nom" et "prénom", il faudra taper :
SELECT nom, prénom FROM visiteurs
Si vous voulez prendre tous les champs, tapez *. Cette petite étoile peut se traduire
par "tout" : "Prendre tout ce qu'il y a..."
3 FROM : c'est un mot de liaison. Signifier: "dans". FROM fait la liaison entre
le nom des champs et
le nom de la table
4 visiteurs : c'est le nom de la table dans laquelle on travaille.
Code:
<?php
$reponse = mysql_query("SELECT * FROM visiteurs");
?>
La variable $reponse contient maintenant la réponse de MySQL.
Afficher le résultat d'une requête
On va créer un array(tableau) à partir de la variable $reponse grâce à la fonction PHP
mysql_fetch_array,. Ce sera un tableau associatif : vous mettrez entre crochets le nom
du champ qui vous intéresse.
Par exemple, si vous vous intéressez au champ "nom", vous utiliserez
l'array $donnees['nom'].
Nous allons avoir besoin d'une boucle,là vous allez pouvoir voir l'utilisation de boucle.
La boucle va nous permettre de parcourir les entrées de la table une à une. A chaque fois
que vous utilisez la fonction mysql_fetch_array, vous passez à l'entrée suivante. La boucle
est donc répétée autant de fois qu'il n'y a d'entrées dans votre table.
Voici donc comment on fait pour afficher le résultat de la requête dans un tableau vous
savez comment faire un tableau en HTML si non voir mon cours ici :
Code PHP:
<?php
mysql_connect("localhost", "root"); // Connexion à MySQL
mysql_select_db("ma_base"); // Sélection de la base ma_base
$reponse = mysql_query("SELECT * FROM visiteurs"); // Requête SQL
// On fait une boucle pour lister tout ce que contient la table visiteur :
//puis on écrit tout ça dans un tableau
?>
<table>
<tr>
<th>Jeu</th>
<th>Le prénom </th>
<th> age</th>
<th>paye</th>
<th>Sexe</th>
<th>date_derniere_visite</th>
</tr>
<?php $n=1;?>
<?php while ($donnees = mysql_fetch_array($reponse) )
{
?>
<tr> <td><?php echo $n++;?></td>
<td><?php echo $donnees['nom']; ?></td>
<td><?php echo $donnees['prénom']; ?> </td>
<td><?php echo $donnees['age']; ?> euros</td>
<td><?php echo $donnees['paye']; ?> </td>
<td><?php echo $donnees['sexe]; ?></td>
<td><?php echo $donnees['date_derniere_visite']; ?></td>
</tr>
<?php
}
mysql_close(); // Déconnexion de MySQL
?>
</table>
dans ce code nous avons comme :
Serveur loclhost.
Utilisateur root.
Et sans mot de passe car il s'agit d'un serveur local qui est sur notre disque dure.
Si on avait un serveur distant (celui de notre hébergeur par exemple) on aurait du écrire:
mysql_connect("hote", "utilisateur", "mot_de_passe")
autre chose nous avons créé une variable $n pour numéroter nos entrées et nous l'incrémentons
de 1 à chaque passage de la boucle $n++ .
Lorsqu'une requête SQL "plante", PHP vous dira qu'il y a eu une erreur à la ligne
du mysql_fetch_array.
Mais sans donner de détaille, pour le forcer à les donner ces détaille on ajoute dans
la ligne du mysql_query un code comme suit:
<?php
$reponse = mysql_query("SELECT nom FROM visiteurs") or die(mysql_error());
?>
Prenons un exemple simple et concret : supposons que l'on désire développer une base de
données contenant une liste de CD audio. Cette liste de CD sera en fait composée de tous les
CD que possède chaque personne d'un groupe d'amis. Et ceci, afin de pouvoir se prêter mutuellement
les différents CD, et de savoir exactement qui à quoi comme CD.
On suppose que le groupe d'amis est composé de 3 personnes :
- Carabde
- Gerome
- Dubois
Chaque personne a un numéro de téléphone, et chaque personne possède un certain nombre de CD.
On prendra aussi en considération le titre de l'album et le nom de l'interprète.
On aurait alors très bien pu obtenir (sous forme d'un tableau) la base de données suivante :
| Propriétaire | N. tél | Auteur | Titre |
| CARABDE | 06-40-10-64-54 | Cassius | Au rêve |
| CARABDE | 06-40-10-64-54 | Daft Punk | Discovery |
| Gerome | 06-62-84-36-81 | Cassius | Au rêve |
| Gerome | 06-62-84-36-81 | Télépopmusik | Genetic world |
| Dubois | 06-67-71-00-86 | Clamaran | Release yourself |
Notez bien que ce tableau, en terme de base de données, se nomme une table et que chaque
ligne du tableau se nomme une entrée. La première ligne du tableau comporte les attributs
de la table (Propriétaire, N. tél, Auteur et Titre sont les attributs de notre table).
Notez qu’une base de données peut contenir plusieurs tables.
Faisons maintenant quelques interrogations sur cette base de données :
Qui possède un album de Cassius ?
>> réponse : CARABDE et Gerome
Quel est le numéro de téléphone de Dubois ?
>> réponse : 06-67-71-00-86
Quels sont les albums des Daft Punk disponibles dans la liste de CD ?
>> réponse : Discovery (il n'y en a qu'un seul)
A première vue donc, le principe des bases de données est très facilement assimilable.
Il faut également savoir que dans la table d'une base de données, on ne peut pas avoir 2
entrées (donc 2 lignes du tableau) ayant les mêmes éléments (en effet, il serait quand même
bête qu'une personne ai un CD en double).
Un autre exemple :
Imaginons maintenant que Gerome vienne de changer de numéro de téléphone.
Supposons que son nouveau numéro est 06-63-03-29-09et qu'en plus il vienne de s'acheter
un nouveau CD :
Paradise de Bob Sinclar.
On insère alors une nouvelle ligne dans notre table (une nouvelle entrée), et
l'on obtient donc :
| Propriétaire | N. tél | Auteur | Titre |
| CARABDE | 06-40-10-64-54 | Cassius | Au rêve |
| CARABDE | 06-40-10-64-54 | Daft Punk | Discovery |
| Gerome | 06-62-84-36-81 | Cassius | Au rêve |
| Gerome | 06-62-84-36-81 | Télépopmusik | Genetic world |
| Dubois | 06-67-71-00-86 | Clamaran | Release yourself |
| Gerome | 06-63-03-29-09 | Bob Sinclar | Paradise |
Imaginons maintenant que j'interroge ma base de données.
Quel est le numéro de téléphone de Gerome ?
>> Réponse : 06-63-03-29-09ou bien 06-62-84-36-81
Nous remarquons tout de suite qu'un problème majeur arrive : c'est à dire que
Gerome possède deux numéros de téléphone alors qu'il ne devrait en posséder qu'un seul.
Pour remédier à ce problème, il faudrait, par exemple modifier toutes les premieres entrées
et ainsi mettre à jour le numéro de téléphone de Gerome.
Dans notre cas, cette solution n'est pas vraiment gênante, en revanche, lorsque la table
comporte quelques centaines voir milliers d’entrées, c'est déjà beaucoup plus gênant.
En fait, ce problème survient généralement à cause d'une mauvaise conception de
la base de données.
En effet, au lieu de créer une seule table contenant toutes les informations,
nous aurions dû créer deux tables :
- une contenant la liste des CD (Auteur et Titre)
- une contenant les informations des propriétaires des CD (Propriétaire et N. de tel)
Ensuite, il nous resterait a faire un lien entre les tables, nous permettant de savoir qui
possède tel ou tel CD.
Mettons cette solution en pratique. On a alors notre table contenant la liste des propriétaires
qui aura les attributs suivants :
- numéro du propriétaire
- nom du propriétaire
- numéro de téléphone du propriétaire
Et la table contenant la liste de CD, aura les attributs suivants :
- numéro du propriétaire du CD
- Auteur du CD
- Titre du CD
(Et c'est grâce au numéro du propriétaire que l'on fera la liaison entre les deux tables, c’est
ce qu’on appelle une jointure)
On aura alors :
| N. du propriétaire | Propriétaire | N. tél |
| 1 | CARABDE | 06-40-10-64-54 |
| 2 | Gerome | 06-62-84-36-81 |
| 3 | Dubois | 06-67-71-00-86 |
| N. du propriétaire | Auteur | Titre |
| 1 | Cassius | Au rêve |
| 1 | Daft Punk | Discovery |
| 2 | Cassius | Au rêve |
| 2 | Télépopmusik | Genetic world |
| 3 | Clamaran | Release yourself |
| 2 | Bob Sinclar | Paradise |
Ici, on remarque facilement que si une personne change de numéro de téléphone, et bien nous
n’avons qu'une seule modification à effectuer
(vu que chaque numéro de téléphone n'apparaît qu'une fois dans toute la base).
Puis dans ce cas, nous remarquons également que c'est le N. de propriétaire qui effectue la
liaison entre les deux tables (c'est à dire la jointure).
Alors créer ces deux tables
1 liste_proprietaire
2 liste_disque
Mettez N. du propriétaire dans la table liste_proprietaire sur option auto incrémenter la case
AI cochée.
visualiser bien votre idée, écrivez sur papier ce dont vous avez réellement besoin pour votre
base de données,
et tentez au maximum d'éviter d'avoir des problèmes dans vos tables.
Fonctions PHP pour MySQL
Nous venons de voir comment créer nos tables SQL à l'aide d'un PHPMyAdmin (par exemple).
Avant de voir comment faire pour insérer, modifier, supprimer et afficher des entrées de
notre base de données,
il est bon de connaître les fonctions PHP permettant de manoeuvrer ces entrées.
Il faut déjà savoir que les fonctions PHP pour MySQL commence toujours par mysql_
Voici donc la liste des principales fonctions :
| Fonction | | Signification |
| mysql_close | | Ferme la connexion à une base de données |
| mysql_connect | | Etablit une connexion vers la base de données spécifiée dans les arguments |
| mysql_error | | Retourne la description textuelle d'une erreur générée par une action sur une base de données |
| mysql_fetch_array | | Retourne un tableau qui représente tous les entrée sélectionnés (un indice du tableau correspond à un attribut des entrée obtenus). Chaque appel récupère le entrée suivant jusqu'à ce qu'il n'y en ait plus |
| mysql_free_result | | Libère la mémoire associé à la requête spécifiée |
| mysql_num_rows | | Retourne le nombre de entrée dans un résultat |
| mysql_query | | Permet d'exécuter une requête SQL sur une base de données |
| mysql_select_db | | Sélectionne la base de données par défaut |
Afin de pouvoir utiliser tous les éléments contenus dans une base de données,
vous devez indiquer, sur toutes vos pages PHP où vous utilisez votre base,
différents paramètres de connexion à votre base.
Etudions le code suivant :
Code PHP :
1. <?php
2. $base = mysql_connect ('mon_serveur', 'login', 'password');
3. mysql_select_db ('ma_base_de_donnees', $base) ;
4. ?>
La chaîne de caractères mon_serveur doit être remplacé par celle qui correspond au nom de
votre serveur (en règle générale, il s'agit de localhost ; si ce n'est pas le cas, veuillez
contacter votre hébergeur pour de plus amples informations).
login correspond à votre login pour accéder à votre base (c'est-à-dire nom utilisateur).
password, votre mot de passe.
Et ma_base_de_donnees correspond au nom de votre base de données.
Grâce à ce code nous allons donc pouvoir effectuer toutes nos requêtes SQL sur les tables de
notre base de données que nous avions créée dans le cours précédant.
Ce code doit toujours être présent avant toute opération sur votre base de données.
Retourner au haut de la page..
|