首頁 > 資料庫 > mysql教程 > 如何在準備好的語句中安全地使用 LIKE '%{$var}%'?

如何在準備好的語句中安全地使用 LIKE '%{$var}%'?

Barbara Streisand
發布: 2025-01-16 11:04:02
原創
752 人瀏覽過

How to Safely Use LIKE '%{$var}%' with Prepared Statements?

正確使用預處理語句的 LIKE '%{$var}%'

在嘗試對包含特定子字串的使用者名稱執行不區分大小寫的搜尋時(例如,在您鍵入時),使用 LIKE '%{$var}%' 語法可能會遇到問題。當嘗試將此語法與預處理語句一起使用時,就會出現此問題。

為了解決這個問題,建議採用不同的方法:先定義一個包含「%{$yourParam}%」模式的 'likeVar' 變數。然後,使用「?」佔位符準備查詢,再使用 bind_param 綁定 'likeVar' 變數。

範例如下:

<code class="language-php">$likeVar = "%" . $yourParam . "%";
$stmt = $mysqli->prepare("SELECT * FROM REGISTRY WHERE name LIKE ?");
$stmt->bind_param("s", $likeVar);
$stmt->execute();</code>
登入後複製

在此方法中,您首先將 "%" 字元與 $yourParam 連接起來以建立 'likeVar'。然後,在預處理查詢中使用“?”佔位符,並使用字串的“s”說明符將 'likeVar' 變數綁定到它。此方法應確保成功搜尋並顯示結果。

以上是如何在準備好的語句中安全地使用 LIKE '%{$var}%'?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板