Aller au contenu

Créer une connexion PHP et MySQL

Établir une connexion entre PHP et MySQL est essentiel pour créer des applications web dynamiques. Grâce à cette connexion, vous pouvez accéder et manipuler les données stockées dans une base de données MySQL via des scripts PHP. Cet article fournit un guide complet pour vous aider à créer une connexion entre PHP et MySQL.

Prérequis

Avant de plonger dans la création de la connexion, il est important de vous assurer que les prérequis suivants sont en place :

  • Un serveur web avec PHP installé (comme Apache ou Nginx)
  • Une base de données MySQL
  • L'extension PHP MySQL (incluse dans la plupart des installations PHP)

Comprendre la connexion PHP et MySQL

Une connexion PHP et MySQL implique deux composants principaux : PHP et une base de données MySQL. PHP est un langage de script côté serveur utilisé pour créer des pages web dynamiques, tandis qu'une base de données MySQL est utilisée pour stocker et récupérer des données.

Pour connecter PHP et MySQL, vous devrez utiliser l'extension mysqli (MySQL Improved), qui fournit un ensemble de fonctions pour travailler avec une base de données MySQL. Avec l'extension mysqli, vous pouvez effectuer des opérations CRUD (Create, Read, Update, Delete) sur une base de données via des scripts PHP.

Établir une connexion

Pour établir une connexion entre PHP et MySQL, vous devrez utiliser la fonction mysqli_connect(). Cette fonction prend plusieurs paramètres, notamment le nom du serveur, le nom d'utilisateur et le mot de passe.

Voici un exemple d'utilisation de la fonction mysqli_connect() :

Exemple PHP d'utilisation de la fonction mysqli_connect

php
<?php 
$server = "localhost";
$username = "your_username";
$password = "your_password";

// Establish connection 
$conn = mysqli_connect($server, $username, $password); 

// Check connection 
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

Dans l'exemple ci-dessus, $server est défini sur localhost, qui est l'emplacement par défaut du serveur MySQL. $username et $password doivent être définis avec le nom d'utilisateur et le mot de passe utilisés pour accéder à la base de données.

Après avoir établi la connexion, nous utilisons la fonction mysqli_connect_error() pour vérifier si celle-ci a réussi. Si la connexion échoue, le script affiche un message d'erreur et ferme la connexion. Si la connexion est réussie, le script affiche "Connected successfully".

Astuce : Vous pouvez également passer le nom de la base de données en tant que quatrième paramètre à mysqli_connect() pour simplifier la logique de connexion et sauter l'étape de sélection de la base de données.

Sélectionner une base de données

Une fois la connexion au serveur MySQL établie, vous devrez sélectionner une base de données avec laquelle travailler. Vous pouvez le faire à l'aide de la fonction mysqli_select_db().

Voici un exemple d'utilisation de la fonction mysqli_select_db() :

Exemple PHP d'utilisation de la fonction mysqli_select_db

php
<?php 
$server = "localhost";
$username = "your_username";
$password = "your_password";
$db = "your_database";

// Establish connection 
$conn = mysqli_connect($server, $username, $password); 

// Check connection 
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// Select database 
$select_db = mysqli_select_db($conn, $db); 

// Check database selection 
if (!$select_db) {
    die("Error selecting database: " . mysqli_error($conn));
}
echo "Database selected successfully";
?>

Dans l'exemple ci-dessus, $db est défini sur le nom de la base de données que vous souhaitez sélectionner. Après avoir établi la connexion, nous utilisons la fonction mysqli_select_db() pour sélectionner la base de données. La fonction prend deux paramètres : la connexion et le nom de la base de données.

Nous utilisons ensuite la fonction mysqli_error() pour vérifier si la base de données a été sélectionnée avec succès. Si la sélection échoue, le script affiche un message d'erreur et ferme la connexion. Si la sélection est réussie, le script affiche "Database selected successfully".

Fermer la connexion

Lorsque vous avez terminé de travailler avec une base de données MySQL, il est important de fermer la connexion. Cela permet de libérer des ressources et de prévenir d'éventuels problèmes de sécurité.

Pour fermer la connexion, vous pouvez utiliser la fonction mysqli_close(). Voici un exemple d'utilisation de la fonction mysqli_close() :

Exemple PHP d'utilisation de la fonction mysqli_close

php
<?php 
$server = "localhost";
$username = "your_username";
$password = "your_password";
$db = "your_database";

// Establish connection 
$conn = mysqli_connect($server, $username, $password); 

// Check connection 
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// Select database 
$select_db = mysqli_select_db($conn, $db); 

// Check database selection 
if (!$select_db) {
    die("Error selecting database: " . mysqli_error($conn));
}

// Close connection 
mysqli_close($conn); 
echo "Connection closed";
?>

Dans l'exemple ci-dessus, nous utilisons la fonction mysqli_close() pour fermer la connexion. La fonction prend un paramètre : la connexion. Le script affiche ensuite "Connection closed" pour confirmer que la connexion a bien été fermée.

Note de sécurité : Dans les environnements de production, évitez de coder en dur les identifiants. Utilisez des variables d'environnement ou des fichiers de configuration pour stocker les données sensibles.

Conclusion

Dans cet article, nous avons fourni un guide complet pour vous aider à créer une connexion entre PHP et MySQL. Nous avons abordé les prérequis, la compréhension de la connexion, l'établissement de la connexion, la sélection d'une base de données et la fermeture de la connexion. Grâce à ce guide, vous devriez désormais être capable de créer une connexion entre PHP et MySQL et d'effectuer des opérations CRUD sur une base de données via des scripts PHP.

Pour les applications PHP modernes, envisagez d'utiliser PDO ou l'interface orientée objet mysqli, qui offrent une sécurité améliorée, des instructions préparées et une meilleure gestion des erreurs.

Pratique

Quelles sont les informations requises pour se connecter à une base de données MySQL avec PHP ?

Trouvez-vous cela utile?

Aperçu dual-run — comparez avec les routes Symfony en production.