Melaksanakan Pertanyaan LIKE dengan PDO
Apabila melaksanakan pertanyaan LIKE dalam PDO, seseorang mungkin menghadapi cabaran untuk memastikan sintaks yang betul. Soalan ini menyerlahkan isu yang dihadapi semasa cuba mencari rekod berdasarkan dua pembolehubah menggunakan LIKE.
Untuk melaksanakan pertanyaan LIKE dengan PDO, adalah penting untuk memasukkan % aksara kad bebas dalam parameter , bukan rentetan pertanyaan. Berikut ialah kod yang betul:
$query = "SELECT * FROM tbl WHERE address LIKE ? OR address LIKE ?"; $params = array("%$var1%", "%$var2%"); $stmt = $handle->prepare($query); $stmt->execute($params);
Dalam percubaan sebelumnya, % aksara telah dimasukkan dalam rentetan pertanyaan, mengakibatkan pertanyaan yang tidak betul. Pernyataan yang disediakan akan memetik nilai dalam rentetan yang telah dipetik, yang membawa kepada keputusan yang salah.
Dengan memasukkan kad bebas dalam parameter, pertanyaan akan dilaksanakan dengan betul, mencari rekod di mana lajur alamat mengandungi sama ada $var1 atau $var2 (atau kedua-duanya).
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pertanyaan LIKE dengan PDO Menggunakan Dua Pembolehubah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!