防止多个mysql数据/表单提交并更新现有条目?

时间:2015-03-09 09:31:06

标签: php jquery mysql wordpress forms

我有一个包含几个表单的页面,我需要能够通过在提交时记录他们的IP地址来阻止用户提交每个特定表单的副本。

如果在mysql数据库中找到现有条目,从他们提交的表单的IP地址,但提交的输入不同,我需要能够使用新值更新该条目。

如果输入相同,我需要将其丢弃。

<form action="" name="form1" method="post">
<input type="text" value="" name="A" />
<input type="text" value="" name="B" />
<input type="text" value="" name="C" />
<input type="text" value="" name="D" />
<input type="Submit" value="Submit Form" name="submitForm" />
</form>

<form action="" name="form2" method="post">
<input type="text" value="" name="A" />
<input type="text" value="" name="B" />
<input type="text" value="" name="C" />
<input type="text" value="" name="D" />
<input type="Submit" value="Submit Form" name="submitForm" />
</form>

<form action="" name="form3" method="post">
<input type="text" value="" name="A" />
<input type="text" value="" name="B" />
<input type="text" value="" name="C" />
<input type="text" value="" name="D" />
<input type="Submit" value="Submit Form" name="submitForm" />
</form>

1 个答案:

答案 0 :(得分:1)

我可以为您提供适当的解决方案,

$ip = $_SERVER["REMOTE_ADDR"]; //store the visitors ip to a variable

$retval = mysql_query("SELECT * FROM table WHERE ip ='$ip' ");

if( mysql_num_rows($retval) > 0) {
    mysql_query("UPDATE table SET val1 = '$form_val' "); //If Ip exist, update
}
else
{
    mysql_query("INSERT INTO table (val1) VALUES ('$form_val') ");//else insert
}