Démarrage rapide : Utilisation de PHP pour se connecter et interroger des données dans Azure Database pour MySQL

S’APPLIQUE À : Azure Database pour MySQL - Serveur unique

Important

Azure Database pour MySQL serveur unique se trouve sur le chemin de mise hors service. Nous vous recommandons vivement de procéder à la mise à niveau vers Azure Database pour MySQL serveur flexible. Pour plus d’informations sur la migration vers Azure Database pour MySQL serveur flexible, consultez Ce qui se passe pour Azure Database pour MySQL serveur unique ?

Ce guide de démarrage rapide vous explique comment vous connecter à une base de données Azure pour MySQL en utilisant une application PHP. Il détaille l’utilisation d’instructions SQL pour interroger la base de données, la mettre à jour, y insérer des données ou en supprimer.

Prérequis

Voici les prérequis pour ce guide de démarrage rapide :

Notes

Nous utilisons la bibliothèque MySQLi pour gérer, connecter et interroger le serveur dans ce guide de démarrage rapide.

Obtenir des informations de connexion

Vous pouvez récupérer les informations de connexion du serveur de base de données depuis le portail Azure en suivant ces étapes :

  1. Connectez-vous au portail Azure.

  2. Accédez à la page Azure Database pour MySQL. Vous pouvez rechercher et sélectionner Azure Database pour MySQL. Find Azure Database for MySQL

  3. Sélectionnez votre serveur MySQL (par exemple mydemoserver).

  4. Dans la page Vue d’ensemble, copiez le nom complet du serveur en regard de Nom du serveur et le nom d’utilisateur administrateur en regard de Nom de connexion de l’administrateur du serveur. Pour copier le nom du serveur ou de l’hôte, pointez dessus et sélectionnez l’icône Copier.

Important

  • Si vous avez oublié votre mot de passe, vous pouvez réinitialiser le mot de passe.
  • Remplacez les valeurs des paramètres host, username, password et db_name par vos propres valeurs**.

Étape 1 : Connexion au serveur

SSL est activé par défaut. Vous devrez peut-être télécharger le certificat SSL DigiCertGlobalRootG2 pour vous connecter depuis votre environnement local. Ce code appelle :

  • mysqli_init pour initialiser MySQLi.
  • mysqli_ssl_set pour pointer sur le chemin du certificat SSL. Cette action est nécessaire pour votre environnement local, mais elle est inutile pour App Service Web App et les machines virtuelles Azure.
  • mysqli_real_connect pour se connecter à MySQL.
  • mysqli_close pour fermer la connexion.
$host = 'mydemoserver.mysql.database.azure.com';
$username = 'myadmin@mydemoserver';
$password = 'your_password';
$db_name = 'your_database';

//Initializes MySQLi
$conn = mysqli_init();

mysqli_ssl_set($conn,NULL,NULL, "/var/www/html/DigiCertGlobalRootG2.crt.pem", NULL, NULL);

// Establish the connection
mysqli_real_connect($conn, $host, $username, $password, $db_name, 3306, NULL, MYSQLI_CLIENT_SSL);

//If connection failed, show the error
if (mysqli_connect_errno())
{
    die('Failed to connect to MySQL: '.mysqli_connect_error());
}

Étape 2 : Créer une table

Utilisez le code suivant pour la connexion. Ce code appelle :

// Run the create table query
if (mysqli_query($conn, '
CREATE TABLE Products (
`Id` INT NOT NULL AUTO_INCREMENT ,
`ProductName` VARCHAR(200) NOT NULL ,
`Color` VARCHAR(50) NOT NULL ,
`Price` DOUBLE NOT NULL ,
PRIMARY KEY (`Id`)
);
')) {
printf("Table created\n");
}

Étape 3 : Insertion des données

Utilisez le code suivant pour insérer des données à l’aide d’une instruction SQL INSERT. Ce code utilise les méthodes :

//Create an Insert prepared statement and run it
$product_name = 'BrandNewProduct';
$product_color = 'Blue';
$product_price = 15.5;
if ($stmt = mysqli_prepare($conn, "INSERT INTO Products (ProductName, Color, Price) VALUES (?, ?, ?)"))
{
    mysqli_stmt_bind_param($stmt, 'ssd', $product_name, $product_color, $product_price);
    mysqli_stmt_execute($stmt);
    printf("Insert: Affected %d rows\n", mysqli_stmt_affected_rows($stmt));
    mysqli_stmt_close($stmt);
}

Étape 4 : Lire les données

Utilisez le code suivant pour lire les données à l’aide d’une instruction SQL SELECT. Le code utilise la méthode :

//Run the Select query
printf("Reading data from table: \n");
$res = mysqli_query($conn, 'SELECT * FROM Products');
while ($row = mysqli_fetch_assoc($res))
 {
    var_dump($row);
 }

Étape 5 : Suppression de données

Utilisez le code suivant pour supprimer des lignes au moyen d’une instruction SQL DELETE. Le code utilise les méthodes :

//Run the Delete statement
$product_name = 'BrandNewProduct';
if ($stmt = mysqli_prepare($conn, "DELETE FROM Products WHERE ProductName = ?")) {
mysqli_stmt_bind_param($stmt, 's', $product_name);
mysqli_stmt_execute($stmt);
printf("Delete: Affected %d rows\n", mysqli_stmt_affected_rows($stmt));
mysqli_stmt_close($stmt);
}

Nettoyer les ressources

Pour nettoyer toutes les ressources utilisées dans le cadre de ce guide de démarrage rapide, supprimez le groupe de ressources à l’aide de la commande suivante :

az group delete \
    --name $AZ_RESOURCE_GROUP \
    --yes

Étapes suivantes