Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment connecter la base de données MySQL avec le site Web PHP

MySQL est un système de gestion de base de données très populaire qui peut alimenter des projets de toutes tailles. Sa capacité à gérer d'énormes volumes de données sans transpirer est l'un de ses principaux arguments de vente. Connectez MySQL avec du code PHP, vous pouvez utiliser l'une des trois méthodologies.

Il existe trois types de méthodes en PHP pour connecter la base de données MySQL via le backend :

  • MySQL
  • MySQLi
  • AOP

mysql() est maintenant obsolète en raison de problèmes de sécurité comme l'injection SQL, etc., mais les deux autres sont activement utilisés.

MySQLi

MySQLi est une API utilisée comme fonction de connecteur pour relier le backend de l'application PHP à la base de données MySQL. Il fonctionne exactement comme la version précédente, mais il est plus sûr et plus rapide, et fournit un meilleur ensemble de fonctions et d'extensions. MySQLi a été introduit avec PHP 5.0.0 et les pilotes ont été installés en 5.3.0. L'API a été conçue pour prendre en charge MySQL de la version 4.1.13 aux versions plus récentes.

AOP

L'extension PHP Data Objects (PDO) est une couche d'abstraction de base de données. C'est comme une interface permettant au backend d'interagir avec la base de données MySQL et d'apporter des modifications sans modifier le code PHP. Il vous donne également la liberté de travailler avec plusieurs bases de données. Le principal avantage de l'utilisation de PDO est que votre code reste simple et portable.

Dans cet article, je vais discuter de la façon de connecter la base de données MySQL sur différents serveurs et je vais également vous donner un aperçu de la connexion de la base de données à l'aide de PDO.

  1. Connecter MySQL à l'aide du serveur Localhost
  2. Connectez MySQL à l'aide de Cloudways Server
  3. Connecter MySQL à l'aide de PDO
  4. Connectez MySQL à l'aide de MySQL distant

Télécharger la feuille de triche MYSQL maintenant

Nous enverrons un lien de téléchargement dans votre boîte de réception.

Merci

Votre ebook est en route vers votre boîte de réception.


Créer une base de données MySQL sur l'hôte local

Avant de commencer à créer une connexion PHP à la base de données MySQL, vous devez savoir ce qu'est PHPMyAdmin. C'est un panneau de contrôle à partir duquel vous pouvez gérer la base de données que vous avez créée. Ouvrez votre navigateur et accédez à localhost/PHPMyAdmin ou cliquez sur "Admin" dans l'interface utilisateur XAMPP.

Lorsque vous avez installé XAMPP pour la première fois, il a uniquement créé le nom d'utilisateur pour y accéder, vous devez maintenant lui ajouter un mot de passe par vous-même. Pour cela, vous devez vous rendre sur le compte utilisateur où l'utilisateur est le même que celui affiché sur cette image :

Cliquez maintenant sur Modifier les privilèges et allez dans Changer le mot de passe administrateur, tapez votre mot de passe et enregistrez-le. N'oubliez pas ce mot de passe car il sera utilisé pour vous connecter à votre base de données.

Remarque :Il n'est pas nécessaire de modifier le mot de passe pour accéder aux bases de données sur l'hôte local. C'est une bonne pratique et c'est pourquoi nous avons utilisé un mot de passe.

Créer une base de données

Retournez maintenant à la page d'accueil de PHPMyAdmin. Cliquez sur Nouveau bouton pour créer une nouvelle base de données.

Dans la nouvelle fenêtre, nommez votre base de données selon vos besoins, je la nomme "pratique ”. Sélectionnez maintenant Collation en tant que utf8_general_ci, car nous l'utilisons à des fins d'apprentissage et il gérera toutes nos requêtes et données qui seront couvertes dans cette série de didacticiels. Cliquez maintenant sur Créer et votre base de données sera créée.

La base de données nouvellement créée sera vide maintenant, car elle ne contient aucune table. Je couvrirai cela dans la prochaine série où nous apprendrons à créer des tableaux et à y insérer des données. Dans ce tutoriel, nous allons connecter cette base de données à localhost en utilisant PHP

Créer un dossier dans htdocs

Maintenant, localisez le dossier dans lequel vous avez installé XAMPP et ouvrez le dossier htdocs (généralement c:/xampp). Créez un nouveau dossier dans c:/xampp/htdocs/ et nommez-le « practice », nous placerons les fichiers Web dans ce dossier. Pourquoi avons-nous créé un dossier dans htdocs ? XAMPP utilise des dossiers dans htdocs pour exécuter et exécuter vos sites PHP.

Remarque :Si vous utilisez WAMP, ajoutez votre dossier d'entraînement dans le dossier c:/wamp/www.

Créer un fichier de connexion à la base de données en PHP

Créez un nouveau fichier PHP et nommez-le db_connnection.php et enregistrez-le. Pourquoi est-ce que je crée un fichier de connexion à la base de données séparé ? Parce que si vous avez créé plusieurs fichiers dans lesquels vous souhaitez insérer des données ou sélectionner des données dans les bases de données, vous n'avez pas besoin d'écrire le code de connexion à la base de données à chaque fois.

<?php

function OpenCon()
 {
 $dbhost = "localhost";
 $dbuser = "root";
 $dbpass = "1234";
 $db = "example";


 $conn = new mysqli($dbhost, $dbuser, $dbpass,$db) or die("Connect failed: %s\n". $conn -> error);

 
 return $conn;
 }
 
function CloseCon($conn)
 {
 $conn -> close();
 }
   
?>

Voici l'explication de la variable que nous avons utilisée dans notre fichier db_connection :

  1. $dbhost sera l'hôte sur lequel votre serveur s'exécute, il s'agit généralement de localhost.
  2. $dbuser sera le nom d'utilisateur, c'est-à-dire root et $dbpass sera le mot de passe qui est le même que celui que vous avez utilisé pour accéder à votre PHPMyAdmin.
  3. $dbname sera le nom de votre base de données que nous avons créée dans ce tutoriel.

Il vous suffit de l'inclure en utilisant la fonction personnalisée PHP include (incluez 'connection.php') en haut de votre code et appelez sa fonction et utilisez-la. Cela aide également lorsque vous déplacez l'emplacement de votre projet d'un PC à un autre et que vous devez modifier les valeurs sur le fichier unique et toutes les modifications seront automatiquement appliquées à tous les autres fichiers.

Créez un nouveau fichier PHP pour vérifier votre connexion à la base de données

Créez un nouveau fichier PHP pour vous connecter à votre base de données. Nommez-le index.php et ajoutez ce code dans ce fichier.

<?php
include 'db_connection.php';

$conn = OpenCon();

echo "Connected Successfully";

CloseCon($conn);

?>

Lancez-le !

Ouvrez maintenant votre navigateur et accédez à localhost/practice/index.php et vous devriez voir cet écran :

Message de confirmation

Toutes nos félicitations! Vous avez connecté avec succès votre base de données à votre hôte local ! Si vous ne pouvez pas voir cet écran, vérifiez si vous avez tout fait correctement dans votre fichier db_connection.php.

Créer une base de données MySQL sur le serveur Cloudways

Pour les besoins de ce tutoriel, je suppose que vous avez une application PHP installée sur un serveur Web. Ma configuration est :

  • PHP 7.3
  • MySQL

J'ai décidé d'héberger mon application PHP sur des serveurs gérés par Cloudways car j'obtiens une pile d'hébergement hautement optimisée et aucun problème de gestion de serveur. Vous pouvez essayer Cloudways gratuitement en vous connectant à un compte, puis en suivant ce simple GIF pour configurer le serveur et l'application PHP. Découvrez les plans d'hébergement Cloudways pour AWS, Google Compute Engine, Vultr, Linode et Digital Ocean pour trouver celui qui vous convient.

Après avoir lancé avec succès une application PHP sur Cloudways, allez dans l'onglet de l'application et vérifiez les détails de la base de données et cliquez également sur le bouton pour lancer le gestionnaire de base de données .

Se connecter à la base de données MySQL

Pour configurer une connexion à la base de données, utilisez le mysql_connect une fonction. Cette fonction renvoie un pointeur (également appelé handle de base de données) vers la connexion à la base de données. Cette poignée sera utilisée dans le code plus tard. Une fois que vous avez la poignée, n'oubliez pas d'ajouter vos informations d'identification de base de données.

  • Créez un nouveau fichier PHP et nommez-le db_connnection.php et enregistrez-le.

Pourquoi est-ce que je crée un fichier de connexion à la base de données séparé ? Parce que si vous avez créé plusieurs fichiers dans lesquels vous souhaitez insérer des données ou sélectionner des données dans les bases de données, vous n'avez pas besoin d'écrire le code de connexion à la base de données à chaque fois. Il vous suffit de l'inclure en utilisant la fonction personnalisée PHP include (include 'connection.php') en haut de votre code et d'appeler sa fonction et de l'utiliser.

À ce stade, vous avez la possibilité d'utiliser la requête de connexion procédurale MySQLi ou la connexion à la base de données basée sur PHP PDO :

Requête procédurale MySQLi

<?php

$servername = "localhost";

$username = "username";

$password = "password";

$db = "dbname";



// Create connection

$conn = mysqli_connect($servername, $username, $password,$db);



// Check connection

if (!$conn) {

   die("Connection failed: " . mysqli_connect_error());

}

echo "Connected successfully";

?>

Connecter la base de données MySQL avec PHP en utilisant PDO

<?php

$servername = "localhost";

$username = "username";

$password = "password";

$db = "dbname";



try {

   $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password, $db);

   // set the PDO error mode to exception

   $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

   echo "Connected successfully";

   }

catch(PDOException $e)

   {

   echo "Connection failed: " . $e->getMessage();

   }

?>

Vérifier la connexion

<?php

include 'db_connection.php';

 

echo "Connected Successfully";

mysqli_close($conn);

?>

Pour PDO Fermer la Connexion comme ça

$conn = null;

MySQL distant

Pour une connexion PHP MySQL à distance, connectez-vous à la plate-forme Cloudways avec vos informations d'identification. Cliquez sur « Serveurs » dans la barre de menu supérieure. Ensuite, cliquez sur votre serveur cible dans la liste.

  • Ensuite, accédez à l'option de menu Sécurité dans le menu de gauche, puis cliquez sur l'onglet MySQL.
  • Ajoutez l'adresse IP à la zone de texte "Ajouter une adresse IP à la liste blanche" et cliquez sur le bouton "Ajouter".
  • Si vous avez plusieurs adresses IP, répétez le processus.
  • Une fois que vous avez terminé, cliquez sur le bouton "Enregistrer les modifications" pour finaliser les modifications

Après avoir réussi, définissez la liste blanche IP, définissez l'adresse IP en connexion et exécutez la requête.

Les meilleurs outils de gestion MySQL

Atelier MySQL

MySQL Workbench est un outil visuel pour les concepteurs de bases de données, les développeurs et les DBA. MySQL Workbench fournit la modélisation des informations, l'avancement SQL et des dispositifs d'organisation complets pour l'organisation des serveurs, l'organisation des clients, le renforcement et bien plus encore. MySQL Workbench est accessible sous Windows, Linux et Mac OS X.

MySQL Workbench est un gestionnaire de base de données MySQL très populaire pour les développeurs. Il fournit des outils d'administration pratiques tels que la configuration du serveur, la gestion des utilisateurs et bien d'autres. Il est disponible pour les systèmes d'exploitation MAC OS, Linux et Windows.

Nous conseillons à tous les développeurs en herbe qui souhaitent apprendre l'administration de base de données de l'utiliser à leur avantage. Les fonctionnalités de gestion les aideront à maîtriser pleinement l'administration de la base de données.

Avantages

  1. Il enregistre les instructions SQL
  2. Fournit un accès hors ligne aux bases de données distantes
  3. Stocke plusieurs connexions au même endroit
  4. Schéma visuel et générateur de requêtes disponibles

Inconvénients

  1. C'est plus complexe que PHPMyAdmin.
  2. Les utilisateurs signalent souvent des plantages logiciels.

Navicat est une série d'administration de bases de données graphiques et de développement de logiciels. Il peut s'agir d'une seule application qui vous permet de vous associer à la connexion PHP MySQL et aux bases de données MariaDB en même temps. Cohérence avec les bases de données cloud telles qu'Amazon RDS, Amazon Aurora, Oracle Cloud, Google Cloud et Microsoft Azure.

Navicat pour MySQL fournit tous les outils avancés dont un développeur a besoin pour gérer entièrement ses opérations de base de données. Sa compatibilité avec les bases de données cloud le rend pratique à utiliser lors de la gestion d'une application basée sur le cloud. Certaines de ses principales fonctionnalités sont :

Avantages :

  1. Interface utilisateur intuitive et facile à utiliser.
  2. Fournit une connexion facile à la base de données MySQL via un terminal SSH.
  3. Planifier les tâches de base de données :sauvegarde, restauration, exécution de rapports, etc.
  4. Importer et exporter des données depuis ODBC, Excel, Access, DBF, TXT, CSV, XML, JSON.
  5. Générateurs visuels de schémas et de requêtes disponibles.
  6. Compatible avec les systèmes d'exploitation Windows, Linux et MAC.
  7. Fonctionnalité de collaboration d'équipe disponible

Inconvénients :

  1. La version professionnelle est chère
  2. L'exécution sous Linux nécessite Wine, ce qui ralentit l'IDE.
  3. Gestion de processus fastidieux

MySQL Yog

Cet outil de gestion MySQL propose trois packages, à savoir Professional, Enterprise et Pro. Vous pouvez choisir l'un d'entre eux après l'avoir testé.

Les administrateurs MySQL peuvent facilement travailler avec cette plate-forme et peuvent gérer leurs tâches de base de données avec efficacité. Il est disponible uniquement pour les systèmes d'exploitation Windows.

AVANTAGES

  1. Outil de conception de requêtes fluides disponible
  2. Offre des fonctionnalités avancées qui aident à apprendre l'administration de la base de données.

CONTRE

  1. La version pro est lourde sur la poche
  2. Les utilisateurs signalent souvent des pannes logicielles occasionnelles
  3. Ne prend en charge aucune base de données à l'exception de MySQL
  4. Aucune prise en charge native des systèmes d'exploitation Linux et MAC.
  5. Pas de prise en charge du glisser-déposer entre plusieurs onglets.

Gestionnaire de bases de données MySQL Cloudways

Le gestionnaire de base de données Cloudways MySQL est de loin l'un des outils de gestion MySQL les plus pratiques et les plus utiles pour les développeurs. Il est très facile à utiliser grâce à son interface utilisateur conviviale et fournit tous les outils d'administration MySQL nécessaires à un gestionnaire de base de données :

Avantages :

  1. Offre une interface utilisateur conviviale et personnalisable avec des fonctionnalités avancées.
  2. Conçoit visuellement les tables de schéma, les contraintes et les requêtes.
  3. Connexion facile à la base de données MySQL à l'aide du terminal SSH.

Inconvénients

  1. Pas de prise en charge du glisser-déposer disponible pour plusieurs onglets.
  2. Manque de prise en charge des bases de données autres que MariaDB, MySQL.
Questions fréquemment posées

Q :Comment puis-je vérifier si MySQL est en cours d'exécution ?

R :Pour vérifier si MySQL est en cours d'exécution, à condition qu'il soit installé en tant que service, vous pouvez accéder à Démarrer -> Panneau de configuration -> Outils d'administration -> Services et rechercher MySQL dans cette liste. Vérifiez s'il est en cours d'exécution ou non.

Q :Comment puis-je trouver mon port localhost pour MySQL ?

R :Si vous utilisez MySQL Workbench, consultez l'onglet Session dans le volet Informations de la barre latérale. Si vous utilisez phpMyAdmin, cliquez sur Accueil, puis sur Variables dans le menu du haut. Recherchez le paramètre de port sur la page. La valeur définie est votre numéro de port MySQL.

Q :Quel est mon nom d'utilisateur et mon mot de passe MySQL local host ?

R :Consultez http://php.net/manual/en/function.mysql-connect.php. $nomserveur ="localhost" ; $nom d'utilisateur ="root" ; $mot de passe ="" ; Cela fonctionnera probablement pour les nouveaux utilisateurs et n'oubliez pas de créer la base de données avant de vous y connecter.

Q :Quelle est la fonction PHP standard pour se connecter à une base de données MySQL ?

R :L'une des raisons pour lesquelles PHP fonctionne si bien avec MySQL est la fonction mysql_connect qui ouvre une connexion à la base de données. Cette fonction prend cinq arguments.

Conclusion

Une bonne structure de base de données est l'épine dorsale de toute application. Qu'il s'agisse d'un CMS ou d'une plate-forme de suivi des tâches en ligne, vous avez besoin d'une ou plusieurs bases de données MySQL pour suivre les informations sur les applications et les utilisateurs et les données du serveur pour les processus d'application.

Dans ce tutoriel, nous avons appris deux choses :

  • Comment créer une nouvelle base de données
  • Comment connecter la base de données MySQL avec PHP

MySQLi et PDO ont leurs préférences. Cependant, avant de commencer, gardez à l'esprit que MySQL n'est utilisé que pour connecter MySQL à PHP, si vous devez migrer vers une autre base de données, vous devrez modifier tout le code. D'autre part, PDO fonctionne avec 12 bases de données diverses, ce qui rend la migration beaucoup moins exigeante.