我可以看到很多討論,爲什麼最好使用PDO bindValue vs bindValue。但是我無法找到的是關於爲什麼我應該在查詢中使用它而不是簡單變量的精確信息。誰能告訴我?感謝爲什麼我應該使用bindValue/Param與普通變量?
$sex = 'male';
$s = $dbh->prepare('SELECT name FROM students WHERE sex = :sex');
$s->bindParam(':sex', $sex);
$s->execute();
VS
$sex = 'male';
$s = $dbh->query('SELECT name FROM students WHERE sex = $sex'); // OR PREPARE, The question is how to pass the variable.
您是否正在尋找解釋爲什麼SQL注入是一個問題? –
簡短回答:SQL注入。準備好的陳述會爲您做適當的轉義。 – Raziel
@ÁlvaroG.Vicario我只想知道我是否應該在查詢中不使用$變量,如果是的話,爲什麼。 –