Échec de connexion PHP : "Connexion refusée"
Lors de la tentative d'établissement d'une connexion PHP à une base de données MySQL hébergée sur phpMyAdmin à l'aide de MAMP, les utilisateurs peut rencontrer l'erreur « Échec de la connexion : SQLSTATE[HY000] [2002] Connexion refusée. » Cette erreur se produit généralement en raison d'un nom d'hôte ou d'une configuration de port incorrect dans la chaîne de connexion.
Initialement, l'erreur "SQLSTATE[HY000] [2002] Aucun fichier ou répertoire de ce type" a été rencontrée car le nom d'hôte était défini sur " localhost", qui correspond au port 8888 pour les installations MAMP. Pour résoudre ce problème, le nom d'hôte doit être remplacé par l'adresse IP du serveur (par exemple, "127.0.0.1").
Cependant, l'erreur "Connexion refusée" a persisté malgré la modification du nom d'hôte. La cause sous-jacente a été déterminée comme étant une configuration de port incorrecte. Par défaut, MySQL sur MAMP écoute sur le port 8889 plutôt que sur le port standard 3306. L'ajustement du port dans la chaîne de connexion à 8889 a résolu le problème :
$conn = new PDO("mysql:host=$servername;port=8889;dbname=AppDatabase", $username, $password);
Il convient de noter que l'utilisation de "localhost" comme nom d'hôte entraînait toujours l'erreur "Aucun fichier ou répertoire de ce type". Par conséquent, il est recommandé d'utiliser l'adresse IP du serveur pour le nom d'hôte afin de garantir une connexion réussie.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!