Rumah >pangkalan data >tutorial mysql >Mengapa saya mendapat ralat 'Amaran: mysqli_query() menjangkakan parameter 1 adalah mysqli, sumber diberi'?

Mengapa saya mendapat ralat 'Amaran: mysqli_query() menjangkakan parameter 1 adalah mysqli, sumber diberi'?

Susan Sarandon
Susan Sarandonasal
2024-11-18 22:05:03918semak imbas

Why am I getting the

mysqli_query() Amaran: Mencampurkan MySQL dan MySQLi Extensions

Ralat yang anda hadapi, "Amaran: mysqli_query() menjangkakan parameter 1 akan mysqli, sumber yang diberikan," menunjukkan ketidakpadanan antara sintaks yang digunakan untuk mysqli_query() dan jenis objek sambungan yang anda hantar kepadanya.

Dalam kod anda, anda telah mengisytiharkan sambungan menggunakan fungsi mysql_connect() , yang tergolong dalam sambungan mysql yang tidak digunakan lagi. Walau bagaimanapun, anda cuba menggunakan fungsi mysqli_query(), yang berfungsi dengan sambungan mysqli.

Untuk menyelesaikan isu ini, anda perlu menggunakan sambungan mysql atau mysqli secara konsisten sepanjang kod anda. Adalah disyorkan untuk menggunakan mysqli, kerana ia menawarkan fungsi dan keselamatan yang lebih baik ke atas sambungan mysql.

Berikut ialah perubahan yang diperlukan:

// Use mysqli instead of mysql for the connection
$myConnection = mysqli_connect("$db_host", "$db_username", "$db_pass") or die ("could not connect to mysql"); 

// Use mysqli_select_db instead of mysql_select_db for database selection
mysqli_select_db($myConnection, "mrmagicadam") or die ("no database");   

Selain itu, anda boleh menggantikan semua kejadian mysql_fetch_array( ) dengan mysqli_fetch_array($query). Perubahan ini memastikan anda menggunakan fungsi yang betul untuk mendapatkan semula data daripada objek hasil mysqli.

Atas ialah kandungan terperinci Mengapa saya mendapat ralat 'Amaran: mysqli_query() menjangkakan parameter 1 adalah mysqli, sumber diberi'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn