2015-04-01 86 views
-2

我有一個newssystem一個鏈接index.php?article=news&id=10,我也努力與評論mysqli_query($db, "SELECT * FROM news_comments WHERE news_id = '10'");PHP鏈接安全

但是,當我改變了鏈接,例如index.php?article=news&id=10=asd的意見是不存在的,因爲我加了asd末。

任何人都可以幫助我嗎?

+1

刪除'=從URL asd'? – 2015-04-01 14:40:25

+0

當然我可以做到,但是你知道,我想有一個系統,不能被其他人操縱。 – Apromer 2015-04-01 14:42:50

+0

網絡上的所有系統都可以被其他人操縱。如果某人弄亂了URL,以致它不再返回有意義的數據,則返回一條錯誤消息或404。你有什麼是一個格式不正確的查詢字符串 - 腳本需要的數據不再存在了,因爲你與URL。 – 2015-04-01 14:44:38

回答

0

您需要確保「id」的值是一個整數。

不知道你的代碼看起來像什麼,但這樣做:

$id = intval($_GET['id']); 
mysqli_query($db, "SELECT * FROM news_comments WHERE news_id = '$id'"); 

你消毒的輸入,以及是否正確?

0

index.php?article=news&id=10&comments=asd將解決PB如果你的代碼看起來像
$id = intval($_GET['id']); mysqli_query($db, "SELECT * FROM news_comments WHERE news_id = '$id'");