Dalam pertemuan baru-baru ini, aplikasi PHP mengalami kesukaran untuk mewujudkan sambungan ke pangkalan data MySQL. Walaupun menggunakan bukti kelayakan yang betul, pangkalan data kekal tidak boleh diakses.
Penyiasatan mendedahkan bahawa kata laluan itu mengandungi tanda dolar ($):
$_DB["password"] = "mypas$word";
Ini menyebabkan kata laluan itu dipotong kepada "mypas" apabila dihantar ke pangkalan data, membawa kepada kegagalan sambungan.
Isu telah diselesaikan dengan melarikan diri dari tanda dolar dengan garis serong ke belakang:
$_DB["password"] = "mypas$word";
Ini membenarkan kata laluan untuk dihantar ke pangkalan data dengan betul.
Untuk mengelakkan isu sedemikian, disyorkan untuk menggunakan rentetan petikan tunggal untuk kata laluan pangkalan data:
$_DB['password'] = 'mypas$word';
Satu -rentetan yang dipetik tidak diproses dan ditafsirkan sebagaimana adanya. Pendekatan ini lebih pantas dan kurang terdedah kepada ralat.
Atas ialah kandungan terperinci Mengapa Tanda Dolar ($) dalam Kata Laluan Menyebabkan Isu Sambungan Pangkalan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!