Apabila cuba mewujudkan sambungan PHP ke pangkalan data MySQL yang dihoskan pada phpMyAdmin, anda mungkin menghadapi ralat berikut: "Sambungan gagal: SQLSTATE[HY000] [2002] Sambungan ditolak." Isu ini boleh timbul disebabkan oleh konfigurasi sambungan yang salah.
Dalam kod yang disediakan:
$servername = "127.0.0.1"; $username = "root"; $password = "root";
Konfigurasi Port:
Pada mulanya, ralat "Tiada fail atau direktori sedemikian" ditemui apabila menggunakan "localhost" sebagai $servername. Menukarnya kepada alamat IP "127.0.0.1" telah menyelesaikan isu ini. Walau bagaimanapun, sambungan itu masih ditolak.
Penyebabnya ialah konfigurasi port yang salah. MAMP biasanya menjalankan MySQL pada port 8889. Mengubah suai rentetan sambungan kepada yang berikut menyelesaikan ralat "Sambungan ditolak":
$conn = new PDO("mysql:host=$servername;port=8889;dbname=AppDatabase", $username, $password);
Walaupun pembetulan ini, menggunakan "localhost" untuk $servername masih menghasilkan ralat yang sama. Ini menunjukkan bahawa mungkin terdapat isu atau sekatan konfigurasi tambahan dalam persediaan MAMP anda.
Petua Tambahan:
Atas ialah kandungan terperinci Mengapa Sambungan PHP MySQL Saya Menolak Sambungan? (SQLSTATE[HY000] [2002]). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!