Comment se connecter à une base de données MySQL en PHP

Comment se connecter à une base de données MySQL en PHP

Messagede Devorg le Lun 21 Juil 2008 18:47

Comment se connecter à une base de données MySQL en PHP


Le langage PHP et la base de donnée MySQL sont souvent associés ensemble. Cela ne veut pas dire qu’on ne peut pas utiliser PHP avec une autre base de données ou encore MySQL avec un autre langage de programmation. En fait, c’est probablement dû au fait qu’ils sont tous les deux des produits qui sont très performant et bien sûr, qu’on peut se les procurer gratuitement.

Cet article vous présente comment utiliser PHP pour se connecter à une base de données MySQL et exécuter des requêtes SQL.

Se connecter à une base de données MySQL est une chose très simple en PHP puisqu’il existe des fonctions élaborées créée dans ce but.

Avant de commencer, imaginons que vous avez créé une table dans une base de données MySQL nommé "exemple1" situé sur un serveur dont l’adresse IP est 192.168.10.10, le nom d’utilisateur est sylvain et le mot de passe est bilodeau. Voici le script de création de la BD pour l’exemple :

Création d'une table dans MySQL
Code: Tout sélectionner
CREATE TABLE test (
id int(11) DEFAULT '0' NOT NULL auto_increment,
nom varchar(20) NOT NULL,
prenom varchar(30),
dateinscription datetime,
PRIMARY KEY (id)
);


Note : Pour administrer une base de données MySQL, vous pouvez utiliser le logiciel MySQL Control Center qui peut être téléchargé gratuitement (enfin, au moment où j’écris cet article c’est le cas) depuis le site mysql.com. Pour les personnes qui ont déjà travaillé en Oracle, ce logiciel ressemble un peu à Toad.

Connexion et déconnexion au serveur MySQL


Avant d’envoyer des requêtes à une base de données MySQL, il faut se connecter au serveur de bases de données. En effet, MySQL est un serveur de bases de données, ce qui veut dire que sur MySQL, vous pouvez avoir plusieurs base de données un peu comme dans SQL Server de Microsoft. Pour vous connecter au serveur, employez la fonction mysql_connect. Voici comment se connecter à notre base de données exemple en utilisant cette fonction :

Connexion à MySQL
Code: Tout sélectionner
$serveur = mysql_connect("192.168.10.10","sylvain","bilodeau");
if (!$serveur)
{
die('Non connecté : ' . mysql_error());
}


Avant la fin du script, il faut se déconnecter de la base de données. Pour cela, on utilise la fonction mysql_close. On écrit simplement :

mysql_close();


Sélectionner une base de données


Après vous être connecté à un serveur de base de données, il faut sélectionner une base de données. Pour sélectionner une base de données, utilisez la fonction mysql_select_db. Voici comment sélectionner la base de données notre base de données exemple1 :

Sélection d'une base de données
Code: Tout sélectionner
$db_exemple1 = mysql_select_db('exemple1', $serveur);
if (!$db_exemple1)
{
die ('Impossible d\'utiliser la base : ' . mysql_error());
}


Exécution de requêtes SQL


À l'aide de PHP, il est possible de sélectionner, d'insérer, de modifier ou de détruire des données de notre table test en exécutant des requêtes SQL. La fonction qui permet d'exécuter une requête SQL est mysql_query.

Insertion de données
Si on veut insérer un enregistrement dans la table test, on écrira ceci :

Exemple de requête INSERT
Code: Tout sélectionner
$query = "INSERT INTO test(nom,prenom,dateinscription) VALUES('Bilodeau','Sylvain', NOW())";
$result = mysql_query($query);


Sélectionner des données
Maintenant que nous avons inséré des données dans la base de données, il faut savoir comment les récupérer pour les afficher à l'écran par exemple. Pour récupérer des données, on commence par utiliser la fonction mysql_query avec une instruction SELECT. Le résultat de la fonction contient un pointeur vers les données sélectionnées. On peut ensuite utiliser une autre fonction comme mysql_result ou mysql_fetch_array pour manipuler les données.

Exemple avec mysql_result
Code: Tout sélectionner
$nombreenrg = mysql_numrows($result); //Nombre d'enregistrements
$i=0; //Compteur

while ($i < $nb)
{
$nom = mysql_result($result,$i,"nom");
$prenom = mysql_result($result,$i,"prenom");
$dateinscription = mysql_result($result,$i,"dateinscription");
echo "Nom : $prenom $nom
Date inscription : $dateinscription";
$i++;
}


Exemple avec mysql_fetch_array
Code: Tout sélectionner
$nb = mysql_numrows($result); //Nombre d'enregistrements

while ($enregistrement = mysql_fetch_array($result))
{
$nom = $enregistrement["nom"];
$prenom = $enregistrement["prenom"];
$dateinscription = $enregistrement["dateinscription"];
echo "Nom : $prenom $nom
Date inscription : $dateinscription";
}


L'avantage de la seconde fonction c'est qu'elle permet d'être sûr de ne pas faire de boucle infini.
Avatar de l’utilisateur
Devorg
Administrateur
Administrateur
 
Messages: 297
Inscription: Lun 7 Avr 2008 14:07

Retourner vers Languages du web

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

cron