Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在过帐数据之前防止重复条目_Javascript_Php_Ajax - Fatal编程技术网

Javascript 在过帐数据之前防止重复条目

Javascript 在过帐数据之前防止重复条目,javascript,php,ajax,Javascript,Php,Ajax,我有一个动态行,最终用户可以在需要时附加额外的行。我还通过在插入之前查询表中的现有数据来限制数据库中的重复条目。如果用户输入序列号001然后提交,并尝试提交另一个序列号001,则系统返回错误。我现在遇到的问题是,如果用户同时在两个不同的行上输入序列号001,则会绕过限制。有没有办法阻止这种php/ajax?还是会落在js身上?请提供一些简单的例子。提前谢谢 $(文档).ready(函数(){ var计数器=2; $('.add row')。单击(函数(){ $(“.item_form”)。追加

我有一个动态行,最终用户可以在需要时附加额外的行。我还通过在插入之前查询表中的现有数据来限制数据库中的重复条目。如果用户输入序列号001然后提交,并尝试提交另一个序列号001,则系统返回错误。我现在遇到的问题是,如果用户同时在两个不同的行上输入序列号001,则会绕过限制。有没有办法阻止这种php/ajax?还是会落在js身上?请提供一些简单的例子。提前谢谢

$(文档).ready(函数(){
var计数器=2;
$('.add row')。单击(函数(){
$(“.item_form”)。追加(“”);
计数器++;});
$('.del行')。单击(函数(){
如果($(“.item_form tr”).length!=2)
{
$(“.item_form tr:last child”).remove();
计数器--;
}
其他的
{
警报(“您不能删除第一行”);
}
});
});


若序列号只是记录计数器,那个么最好自动设置它的值——当页面加载时,从数据库获取最后一个序列号,并在用户添加新行时从该值中递增序列号


如果序列号是用户输入的某个唯一的数字,那么您可以对PHP方法再进行一次AJAX调用,当用户输入时,该方法将“动态”检查数字的唯一性。此外,为了防止用户在一次输入会话期间复制序列号,请创建检查序列号唯一性的JavaScript代码。

您是否尝试为数据库中的该列设置唯一索引?如果我这样做,它将防止重复序列号是,但如果我没有弄错,它将不会返回错误。所以最终用户不知道发生了什么。他们可能会认为一切都很顺利,而不知道他们在插入第二个项目序列号时出错。@MohitBhardwaj谢谢你是唯一一个提出建议的人。我想我找到了解决办法。使用count(array_unique($array))