Rumah > Artikel > pangkalan data > Mengapakah \"Ralat maut: Panggilan ke kaedah yang tidak ditentukan mysqli_stmt::fetch_array()\" Berlaku Apabila Menggunakan Penyata Disediakan?
Membetulkan "Ralat maut: Panggilan ke kaedah yang tidak ditentukan mysqli_stmt::fetch_array() [pendua]"
Dalam kod anda, anda cuba menggunakan mysqli_stmt::fetch_array() apabila menggunakan pernyataan yang disediakan. Fungsi ini tidak tersedia untuk pernyataan yang disediakan.
Penyelesaian:
Sebaliknya, anda harus menggunakan mysqli_stmt::fetch() untuk mendapatkan satu baris data atau mysqli_result ::fetch_all() untuk mendapatkan semula berbilang baris.
Kod disemak:
<code class="php">$search = "player"; $sql = $db->prepare('select job from jobs where job like ?'); $sql->bind_param('s', $search); $sql->execute(); $result = $sql->get_result(); // Get the result object $data = array(); while ($row = $result->fetch_assoc()) { $data[] = array( 'label' => $row['job'] ); echo json_encode($data); } $sql->close(); $db->close();</code>
Dengan menggunakan mysqli_stmt::fetch_array() atau mysqli_result::fetch_assoc(), anda boleh mendapatkan semula data daripada pangkalan data dengan jayanya tanpa menghadapi ralat.
Atas ialah kandungan terperinci Mengapakah \"Ralat maut: Panggilan ke kaedah yang tidak ditentukan mysqli_stmt::fetch_array()\" Berlaku Apabila Menggunakan Penyata Disediakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!