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

标签 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>

最佳答案

我可以为您提供适合您要求的解决方案,

$ip = $_SERVER["REMOTE_ADDR"];//将访问者ip存储到变量

$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
}

关于php - 防止多个 mysql 数据/表单提交并更新现有条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28938689/

相关文章:

javascript - 为什么在jQuery中经过for循环后数组顺序是随机的?

php - mysql php中的空白条目

mysql - 本地数据库失败并切换到云数据库?

php - 如何创建和使用虚假目录结构?

php - 奇怪的 UTF-8 MAMP 问题

php - 移动服务器后,Wordpress 管理员登录 cookie 被阻止错误

jquery-ui - JQuery 自动完成 : trigger <g:select onChange>

c# - JQuery 无法识别点击表行

PHP 列数正确但仍然得到 "Column Count Doesn' t 匹配值计数在第 1 行”

PHP:连接到网络上的共享文件夹