我做的後期編輯功能對於我的網站的職位,但我被困在此。這是我的代碼:PHP,編輯在MySQL數據庫
$post = htmlspecialchars($_GET["story"]);
mysql_select_db("xxxxxx", $con);
$sql="INSERT IGNORE INTO tool WHERE id=$post (title, details, author)
VALUES
('$_POST[title]','$_POST[details]','$_SESSION[Username]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "The story<b> " . $_POST[title] . " </b>has been edited.";
mysql_close($con)
我知道這個錯誤與INSERT IGNORE INTO tool WHERE id=$post
有關。我顯然不希望在數據庫中每一個崗位換到同樣的事情,所以我需要它來找到郵局的ID,這是$post
,然後更改只是特定DB項目的信息。
我聞到SQL注入!並考慮'error_reporting(E_ALL);'然後修復您得到的通知。 – ThiefMaster 2012-04-26 12:41:17
聖SQL注入http://en.wikipedia.org/wiki/SQL_injection – djdy 2012-04-26 12:43:04
讓我們不要忘記我們的老朋友XSS http://en.wikipedia.org/wiki/Cross-site_scripting#Safely_validating_untrusted_HTML_input – freshnode 2012-04-26 12:48:33