Tutoriel PHP-MySQL : 1ère partie

Sommaire du document

Quand nous désirons interroger une base de données [DB] au travers d'un langage Web, que ce langage soit le PHP ou l'ASP, il existe certaines constantes auxquelles nous devons nous conformer.

Dans cette première partie, nous allons simplement approcher les mécanismes, le plus simplement possible mais pas de la de manière la plus efficace. La seconde partie nous montrera comment améliorer ces différents bouts de codes.

Que signifient PHP, MySQL, SQL,...?

MySQL est le SGBD [Système de Gestion de Base de Données] que nous allons utiliser pour stocker nos données.

SQL est le SQL [“Structured Query Language”[4]] est le langage que nous allons utiliser pour exécuter des opérations (lire, ajouter, modifier des données, modifier la structure, etc.) sur notre DB. Nous utiliserons le terme requêtes pour les différentes commandes que nous passerons à la DB.

PHP est le langage que nous allons utiliser dans nos pages Web pour exécuter des opérations avant d'envoyer la page vers le navigateur du client.Dans le cas de ce tutoriel, nous utiliserons principalement PHP pour "piloter" notre DB MySQL (en lui fournissant éventuellement les requêtes SQL nécessaires).

 

Connexion à la base de données

Avant de pouvoir manipuler (afficher, modifier, ajouter, supprimer) des données d'une DB, nous devons nous connecter à cette DB en lui fournissant différentes informations.

PHP nous offre deux méthodes pour nous connecter à la DB :

  • mysql_connect, que nous utiliserons dans nos exemples
  • mysql_pconnect, qui permet de garder la connexion ouverte. Nous n'utiliserons pas cette méthode ici car le risque est très grand d'oublier de fermer des connexions[6].

Ces deux fonctions utilisent les mêmes arguments[7] :

  • Nom de l'hôte : permet de localiser la machine sur laquelle notre DB MySQL est installée.
    Nous pouvons spécifier son adresse IP, comme par exemple 10.0.120.4.
    Nous pouvons aussi simplement spécifier le nom de la machine, comme par exemple mysql5test.
  • Login : nom d'utilisateur de notre DB MySQL.
  • Mot de passe : mot de passe associé au nom d'utilisateur.

Nom de l'hôte :

Dans le cas de tests, nous avons souvent une seule machine sur laquelle se trouve la DB et depuis laquelle nous affichons la page. Dans ce cas, nous pouvons utiliser l'adresse 127.0.0.1, ou le nom localhost

Port MySQL (3306)

Nous ne devons généralement pas spécifier le port, car MySQL utilise par défaut le port 3306. Cependant, lorsque la configuration est différente, nous devons spécifier le numéro de port de MySQL après le nom d'hôte comme ceci : "10.0.120.4:3306", ou comme ceci "mysql5test:3306".

Syntaxe de la connexion

  1. $db_connection = mysql_connect('mysql5test', 'invité', 'password');

La fonction PHP mysql_connect nous renvoie l'identifiant de la connexion dans le cas où tout se passe bien. Nous verrons dans la 2eme partie du tutoriel comment traiter les erreurs possibles.

 

Sélectionner la base de données

Un serveur MySQL peut contenir beaucoup de bases de données différentes. Nous devons donc dire quelle DB nous désirons utiliser.

  1. // Selection de la base de donnees
  2. mysql_select_db('Infobrol');

Nom de la DB

Les hébergeurs ne proposent souvent qu'une seule DB, et ils utilisent souvent le même nom pour la DB et le login.

 

Déconnexion de la base de données

  1. // Deconnexion de la base de donnees
  2. mysql_close($db_connection);

Nous ne devons pas oublier de fermer de la connexion[10] après que nous ayons manipulé les informations.

Se connecter à une base de données est toujours une affaire de compromis car la connexion nécessite un certain temps. Soit nous décidons de laisser la connexion ouverte le temps d'effectuer les différentes requêtes, soit nous nous connectons à chaque fois que c'est nécessaire.
Une méthode de travail efficace est de grouper les requêtes afin d'éviter justement les temps de connexions.

 

Exemple

  1. <?php
  2. // Se connecter
  3. $db_connection = mysql_connect('mysql5test', 'invité', 'password');
  4.  
  5. // Selectionner la base de donnees
  6. mysql_select_db('Infobrol');
  7.  
  8. // Effectuer des operations sur la DB
  9. // ...
  10.  
  11. // Se deconnecter de la DB
  12. mysql_close($db_connection);
  13. ?>

 

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

14 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Notes

  1. a,b,c,d,e,f,g,h,i,j,k,l,m,n DataBase : correspond à « base de données” en français

  2. a,b,c,d,e,f,g,h,i,j,k,l,m,n DB : “DataBase” (en français, « base de données »)

  3.  SGBD : Système de Gestion de Base de Données

  4. a,b Structured Query Language : correspond à « langage structuré d'interrogation” en français

  5.  SQL : “Structured Query Language” (en français, « langage structuré d'interrogation »)

  6.  mysql_pconnect() : De nombreux hébergeurs limitent le nombre de connexions simultanées à la base de données. Si des connexions restent inutilement ouvertes, il est fort possible que l'accès à la DB soit refusé à certains moments.

  7.  Arguments de mysql_pconnect() : Ces arguments sont tous facultatifs. Si ils ne sont pas spécifiés, PHP utilisera les valeurs par défaut de votre serveur, qui sont définies dans le fichier "php.ini".

  8.  Internet Protocol : correspond à « protocole Internet” en français

  9.  IP : “Internet Protocol” (en français, « protocole Internet »)

  10.  mysql_close() : Dans le cas d'une connexion ouverte avec mysql_connect, la fermeture facultative. Toutefois, nous prendrons l'habitude de toujours fermer la connexion.

 

Historique et modifications de la page

  • Samedi 20 Février 2010, 04:12 : Conversion vers la nouvelle interface
Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-225
Document créé le 16/10/04 00:00, dernière modification le Vendredi 17 Juin 2011, 12:12
Source du document imprimé : http:///www.gaudry.be/php-mysql-intro.html
St.Gaudry©07.01.02
 
l'infobrol
Nous sommes le Lundi 24 Juillet 2017, 22:51, toutes les heures sont au format GMT+1.00 Heure, heure d'été (+1)