閱讀你已經正確給出的鏈接。
的解決問題的方法寫在鏈接
1. 使用事先準備好的聲明類來解決SQL注入漏洞&過濾SQL錯誤的請求。 設置錯誤(0)以防止通過例外或錯誤報告泄露信息。
2. 解析輸入字段並限制字符(如>> < \/etc以防止腳本包含。 也解析了易受攻擊的輸出部分是腳本代碼在模塊上下文之外執行。
作出準備好的語句
$oDB=new PDO('..your connection.. ');
$hStmt=$oDB->prepare("select * from users where id=:id");
$hStmt->execute(array(':id',$userID));
注意$userID
上面不與SQL字符串相結合,因此SQL注入將不會進行這項工作。
使用mysqli_real_escape_string
注意mysql_real_escape_string
已經depreceated這樣反而我會提到如何使用mysqli_real_escape_string
$a= "'ABCD"; //will not work because of quotation
$a= $mysqli->real_escape_string($a);
//Now this is the string with special chars escaped
欲瞭解更多信息,請閱讀
PDO How can I prevent SQL injection in PHP?
逃離字符串http://php.net/manual/en/mysqli.real-escape-string.php
這不是一個答案,你引用的資源是鏈接的問題。其餘的是評論材料。 – hakre
夠公平的。我編輯它來描述如何去做。 :-)乾杯 – cjds
在我眼中並不是非常必要,但是玩得開心。太多的愛可能是因爲這個問題很快就會被刪除。 – hakre