3
我讀過,PDO::Prepare
函數創建一個安全查詢。這是否意味着轉義字符不需要手動文字化?如反斜槓字符。PDO ::準備安全
我讀過,PDO::Prepare
函數創建一個安全查詢。這是否意味着轉義字符不需要手動文字化?如反斜槓字符。PDO ::準備安全
否這絕對不意味着。你讀的是誤導。
「準備語句」和「參數化查詢」之間有區別。你希望後者出於衛生目的。
例如:
$pdo->prepare("SELECT * FROM t1 WHERE col1 = $USER_PROVIDED_VALUE");
是不是安全可言,即使它準備。相反,你必須這樣做:
$stmt = $pdo->prepare("SELECT * FROM t1 WHERE col1 = ?");
$stmt->execute(array($USER_PROVIDED_VALUE));
準備查詢是不會爲你做任何事情,在安全性方面,如果你不正確的參數吧。