Penyata PHP PDO Disediakan: MySQL LIKE Query
Apabila melakukan pertanyaan LIKE menggunakan kelas PDO PHP, adalah penting untuk mengendalikan operator LIKE dengan betul dan sediakan pernyataan dengan betul.
Masalah: Dalam kod yang disediakan, pertanyaan asal berfungsi menggunakan klien MySQL tetapi menghadapi masalah apabila dipindahkan ke PHP.
Penyelesaian: Ralat terletak pada klausa WHERE dalam kaedah penyediaan. Baris berikut adalah salah:
<code class="php">$ret = $prep->execute(array(':searchTerm' => '"%' . $searchTerm . '"%')); $ret = $prep->execute(array(':searchTerm' => "%:searchTerm%")); $ret = $prep->execute(array(':searchTerm' => ':' . $searchTerm . '%'));</code>
Penjelasan:
<code class="php">WHERE hs.hs_text LIKE :searchTerm</code>
Dan pernyataan yang disediakan hendaklah dilaksanakan seperti berikut:
<code class="php">$ret = $prep->execute(array(':searchTerm' => '%' . $searchTerm . '%'));</code>
Sekarang, pertanyaan harus mengembalikan hasil yang diingini .
Atas ialah kandungan terperinci Bagaimana Menggunakan Pernyataan PDO yang Disediakan dengan betul untuk Pertanyaan SEPERTI MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!