mysqli_query() Menjangkakan Parameter mysqli: Menyelesaikan Isu Jenis Parameter
Apabila bekerja dengan PHP dan MySQL, anda mungkin menghadapi ralat biasa yang berkaitan kepada mysqli_query() mengharapkan parameter mysqli dan bukannya objek. Ralat ini biasanya berlaku apabila anda cuba membuat pertanyaan pangkalan data menggunakan rujukan objek dan bukannya sumber sambungan mysqli sebenar.
Memahami Mesej Ralat
Mesej ralat " mysqli_query() menjangkakan parameter 1 ialah mysqli, objek diberikan" menunjukkan bahawa fungsi menjangkakan parameter pertama sebagai contoh kelas mysqli, tetapi sebaliknya, ia menerima objek daripada jenis yang berbeza.
Menyelesaikan Isu
Untuk menyelesaikan ralat ini, anda perlu menghantar jenis parameter yang betul kepada mysqli_query(). Dalam kod yang anda berikan, pertanyaan hendaklah dilaksanakan menggunakan kod berikut:
$result = mysqli_query($connection->myconn, $query);
Dalam baris ini, $connection->myconn merujuk kepada sumber sambungan mysqli sebenar, yang merupakan contoh kelas mysqli . Dengan menghantar sumber sambungan ini kepada mysqli_query(), anda mengelakkan ralat dan melaksanakan pertanyaan dengan betul.
Penjelasan
Dalam kod asal anda, tempat anda menulis "$connection ," dan anda cuba menghantar keseluruhan objek createCon Dengan mengakses $connection->myconn, anda menyasarkan sumber sambungan mysqli dalam objek createCon, iaitu jenis parameter yang betul untuk mysqli_query().
Dengan membuat perubahan mudah ini, anda boleh menyelesaikan ralat dan berjaya melaksanakan pertanyaan pangkalan data anda menggunakan mysqli_query().
Atas ialah kandungan terperinci Mengapa mysqli_query() mengharapkan parameter mysqli, tetapi saya mendapat objek sebaliknya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!