Apabila menghadapi ralat ini, ia menunjukkan ketidakpadanan antara jenis data yang dijangkakan dan memberikan nilai dalam fungsi MySQLi. Dalam contoh khusus ini, fungsi pertanyaan tidak menerima objek MySQLi yang sah sebagai parameter pertamanya.
Dalam kod yang disediakan, anda telah menentukan objek sambungan $con menggunakan MySQLi. Walau bagaimanapun, fungsi getPosts(), di mana ralat berlaku, tidak mempunyai akses kepada objek sambungan ini dalam skopnya. Oleh itu, apabila cuba menanyakan pangkalan data, ia melepasi null dan bukannya objek mysqli yang dijangkakan sebagai parameter pertama.
Untuk menyelesaikan isu ini, anda perlu menjadikan $con boleh diakses dalam fungsi getPosts() dengan menghantarnya sebagai hujah. Ini membolehkan fungsi menggunakan objek sambungan untuk melaksanakan pertanyaan dengan betul.
Selain itu, disyorkan untuk menangkap ralat MySQLi dan mengendalikannya dengan sewajarnya, seperti dengan menghentikan pelaksanaan atau memaparkan mesej ralat. Ini memastikan bahawa aplikasi bertindak balas terhadap isu pangkalan data dengan anggun.
Atas ialah kandungan terperinci Mengapa Adakah `mysqli_query()` Throw 'menjangkakan parameter 1 menjadi mysqli, null diberikan'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!