假設我有像PAGE_1形式此
<form action="page_2.php" method="post">
<input type="text" name="text">
<input type="submit" name="submit" value="Submit">
</form>
而在page_2,它就像
if(isset($_POST['submit'])){
$q = mysqli_query("INSERT INTO sample_table VALUES('$_POST[text]')",$database_connect);
}
這段代碼的問題是,它會第一次正常工作。但是,如果用戶刷新page_2,那麼每次創建一個新行時,同樣的數據會一次又一次地插入到我的數據庫表'sample_table'中。但我希望我的用戶只在第一次點擊「提交」按鈕時將數據插入到我的數據庫中。後來,如果他刷新page_2,數據將不會一次又一次地添加到我的數據庫表中。如何才能做到這一點?
** WARNING **:當使用'mysqli'你應該使用[參數化查詢(http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)和[ 'bind_param'](http://php.net/manual/en/mysqli-stmt.bind-param.php)將用戶數據添加到您的查詢中。 **不要**使用字符串插值或連接來完成此操作,因爲您創建了嚴重的[SQL注入漏洞](http://bobby-tables.com/)。 **不要**將'$ _POST','$ _GET'或**任何**用戶數據直接放入查詢中,如果有人試圖利用您的錯誤,這可能會非常有害。 – tadman
我是這個行業的新人。你能給我一個例子如何使用查詢? –
這一切都在評論的鏈接。 PHP手冊和相關注釋進入了大量的細節。 – tadman