Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Melaksanakan Pertanyaan LIKE dengan Penyata Disediakan PDO dalam PHP?

Bagaimana untuk Melaksanakan Pertanyaan LIKE dengan Penyata Disediakan PDO dalam PHP?

Linda Hamilton
Lepaskan: 2024-11-01 17:03:30
asal
986 orang telah melayarinya

How to Execute a LIKE Query with PDO Prepared Statements in PHP?

Penyata PHP PDO Disediakan dengan MySQL LIKE Query

Artikel ini menangani isu menggunakan kelas PDO PHP (pemacu MySQL) untuk melakukan LIKE pertanyaan dengan pangkalan data MySQL.

Masalah timbul apabila cuba menggunakan LIKE dengan pernyataan yang disediakan, kerana sintaks yang digunakan dalam kaedah PDO execute() berbeza daripada klien MySQL.

Sintaks yang salah :

<code class="php">$ret = $prep->execute(array(':searchTerm' => '"%'.$searchTerm.'%"'));</code>
Salin selepas log masuk

menambah petikan berganda yang tidak perlu, yang membawa kepada hasil yang salah.

Begitu juga, sintaks ini juga tidak betul:

<code class="php">$ret = $prep->execute(array(':searchTerm' => '%'.$searchTerm.'%'));</code>
Salin selepas log masuk

kerana ia tidak mempunyai sintaks tambahan yang diperlukan untuk pernyataan yang disediakan.

Sintaks yang betul untuk melaksanakan pertanyaan LIKE dengan pernyataan yang disediakan PDO ialah:

<code class="php">$prep = $dbh->prepare($sql);
$ret = $prep->execute(array(':searchTerm' => '%'.$searchTerm.'%'));</code>
Salin selepas log masuk

Pernyataan yang disediakan menawarkan kelebihan berbanding penggabungan rentetan kerana ia melindungi daripada suntikan SQL. Mereka menganggap nilai sebagai entiti yang berasingan daripada pertanyaan, menghapuskan keperluan untuk penggabungan yang menyusahkan.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pertanyaan LIKE dengan Penyata Disediakan PDO dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan