在MySQLi 中使用參數化查詢來提高效率和安全性
處理基於使用者輸入或應用程式資料動態建構條件的SQL查詢時,優先考慮效率並防止潛在的安全漏洞至關重要。這就是 MySQLi 中的參數化查詢發揮作用的地方。
傳統上,像問題中提到的查詢(SELECT $fields FROM $table WHERE $this=$that AND $this2=$that2)是由手動拼接陣列。然而,這種方法可能效率低下,並使您的程式碼容易受到 MySQL 注入的影響。
更安全、更有效率的解決方案是使用 MySQLi 的參數化查詢。它的工作原理如下:
使用問題中提到的特定查詢的範例:
<code class="php">$db = new mysqli(...); $name = "michael"; $age = 20; $stmt = $db->prepare("SELECT $fields FROM $table WHERE name = ? AND age = ?"); $stmt->bind_param("si", $name, $age); $stmt->execute(); $stmt->close();</code>
這種方法有幾個優點:
以上是MySQLi中的參數化查詢如何提升查詢效率與安全性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!