Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >杂货crud多次插入重复数据

杂货crud多次插入重复数据
EN

Stack Overflow用户
提问于 2015-08-26 23:09:01
回答 3查看 1.9K关注 0票数 3

嗨,我正在使用带有HMVC的Grocery,而且我面临着一些奇怪的问题。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Source extends MX_Controller
{

    function __construct() {
      parent::__construct();
    }

    function index(){
            try{
                $crud = new grocery_CRUD();

                $crud->set_theme('datatables');
                $crud->set_table('source');
                $crud->set_subject('Source');

                $output = $crud->render();
                $data['css_files'] = $output->css_files;
                $data['js_files'] = $output->js_files;
                $data['output'] = $output->output;

                $this->template->title('Source')
                    ->set_layout('default')
                    ->build('example', $data );

            }catch(Exception $e){
                show_error($e->getMessage().' --- '.$e->getTraceAsString());
            }
    }
}

在源表中,我只有一个列"name“,另一个列是id,带有自动增量和主键。

当我添加或插入数据时,它会在表中添加多个数据,有时是重复数据的3倍或4倍。

我也在使用模板库。

这是我第一次用这个Grocery面对的奇怪问题,有人能帮我解决这个问题吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-09-18 22:13:07

我在多次插入杂货数据时也有同样的问题,我通过在js文件中添加下面的代码来解决这个问题。

我使用的是datatable主题,文件是grocery_crud\themes\datatables\js\datatables-add.js

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$('#save-and-go-back-button').click(function(event){
        event.stopImmediatePropagation();
        save_and_close = true;

        $('#crudForm').trigger('submit');
});

$('#crudForm').submit(function(event){
        event.stopImmediatePropagation();
        $(this).ajaxSubmit({
            url: validation_url,
.......

我们需要在单击和提交事件之后添加"event.stopImmediatePropagation();“。

这将有助于停止多重钝插入。

票数 1
EN

Stack Overflow用户

发布于 2015-08-26 23:37:45

主计长,尝试这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    class Source extends MX_Controller
    {
        function __construct() {
            parent::__construct();
        }

        function index(){
            try{
                $crud = new grocery_CRUD();

                $crud->set_theme('datatables');
                $crud->set_table('source');
                $crud->set_subject('Source');

                //edit the id of source table as it's on your table..
                $crud->set_primary_key('id', 'source');

                //set the columns you want
                $crud->columns(
                    'id',
                    'name'
                );

                //how do you want to display them in the frontend
                $crud->display_as('id', 'id');
                $crud->display_as('name', 'name');

                $table = $crud->render();
                $this->_table_output($table);

            }catch(Exception $e){
                show_error($e->getMessage().' --- '.$e->getTraceAsString());
            }
        }
    }

所需的额外职能:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
private function _table_output($output = null)
{
    //load reservations table
    $this->load->view('yourviewfile', $output);
}

查看:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php
foreach($output['css_files'] as $file): ?>
    <link type="text/css" rel="stylesheet" href="<?php echo $file; ?>" />
<?php endforeach; ?>
<?php foreach($output['js_files'] as $file): ?>
    <script src="<?php echo $file; ?>"></script>
<?php endforeach; ?>

<div>
    <?php echo $output['output']; ?>
</div>
票数 0
EN

Stack Overflow用户

发布于 2016-11-04 15:50:54

在显示杂货crud时,有理由列出重复行:-如果在视图之间有一个关系函数(),那么必须确保该视图有唯一的 ID列(没有重复值的),否则您将得到重复的行,解决方案是使用:$crud--set_primary_key(‘id’,'viewname');将该行放在关系函数之前。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32242834

复制
相关文章
如何防止数据重复插入?
问题起源,微信小程序抽风 wx.request() 重复请求服务器提交数据。后端服务也很简单,伪代码如下:
Lenis
2019/12/25
3.1K0
如何防止数据重复插入?
MySQL 插入数据时如何不插入重复的数据
针对一些基础业务数据如用户表,要保证主键Primary或Unique不重复,如果在插入时做判断,效率低且代码复杂。
IT工作者
2021/12/30
7.4K0
MySQL 批量插入:如何不插入重复数据?
业务很简单:需要批量插入一些数据,数据来源可能是其他数据库的表,也可能是一个外部excel的导入
程序猿DD
2021/09/03
3.6K0
MySQL避免插入重复数据
设置唯一索引,可以是联合字段,比如你觉得id不够,你还可以id+name,还可以id+age+name这样子的唯一索引。
乐心湖
2020/07/31
2.9K0
MySql批量插入时,如何不插入重复的数据
业务很简单:需要批量插入一些数据,数据来源可能是其他数据库的表,也可能是一个外部excel的导入
用户8949263
2022/04/08
2.8K0
Mysql批量插入时,如何不插入重复的数据
业务很简单:需要批量插入一些数据,数据来源可能是其他数据库的表,也可能是一个外部excel的导入
Java旅途
2021/07/13
5.4K0
MySql 批量插入时,如何不插入重复的数据
来源:http://www.telami.cn/2018/when-mysql-batch-inserts-and-how-to-not-insert-duplicate-data/
逆锋起笔
2021/06/11
3.5K0
Navicat数据同步,主键重复无法插入
Navicat是一个非常好用的可视化mysql管理软件(其他数据库也有对应版本的支持)
宣言言言
2019/12/19
2.9K0
Navicat数据同步,主键重复无法插入
如何防止数据重复插入?| 签到福利
问题起源,微信小程序抽风 wx.request() 重复请求服务器提交数据。后端服务也很简单,伪代码如下:
二哥聊运营工具
2021/12/17
8240
如何防止数据重复插入?| 签到福利
大数据量数据,MySql批量插入时,如何不插入重复的数据?
Mysql插入不重复的数据,当大数据量的数据需要插入值时,要判断插入是否重复,然后再插入,那么如何提高效率?解决的办法有很多种,不同的场景解决方案也不一样,数据量很小的情况下,怎么搞都行,但是数据量很大的时候,这就不是一个简单的问题了。
IT大咖说
2021/07/19
2.2K0
Mysql 4种方式避免重复插入数据!
最常见的方式就是为字段设置主键或唯一索引,当插入重复数据时,抛出错误,程序终止,但这会给后续处理带来麻烦,因此需要对插入语句做特殊处理,尽量避开或忽略异常,下面我简单介绍一下,感兴趣的朋友可以尝试一下:
xcbeyond
2020/11/03
12.5K0
Mysql 4种方式避免重复插入数据!
Mysql 4 种方式避免重复插入数据!
最常见的方式就是为字段设置主键或唯一索引,当插入重复数据时,抛出错误,程序终止,但这会给后续处理带来麻烦,因此需要对插入语句做特殊处理,尽量避开或忽略异常,下面我简单介绍一下,感兴趣的朋友可以尝试一下:
xcbeyond
2021/01/26
2.2K0
面试官:MySQL 批量插入,如何不插入重复数据?
业务很简单:需要批量插入一些数据,数据来源可能是其他数据库的表,也可能是一个外部excel的导入。
终码一生
2022/04/14
1.4K0
Android之有效防止按钮多次重复点击
我的想法是,判断用户点击按钮间隔时间,如果间隔时间太短,则认为是无效操作,否则进行相关业务处理
贺biubiu
2019/06/10
1.6K0
Mysql4种方式避免重复插入数据!
最常见的方式就是为字段设置主键或唯一索引,当插入重复数据时,抛出错误,程序终止,但这会给后续处理带来麻烦,因此需要对插入语句做特殊处理,尽量避开或忽略异常,下面我简单介绍一下,感兴趣的朋友可以尝试一下:
BUG弄潮儿
2020/10/19
2.8K0
Mysql批量插入数据时如何解决重复问题?
基本用法:on dupdate key update 语句基本功能是:当表中没有原来记录时,就插入,有的话就更新。
码农编程进阶笔记
2022/08/18
1.8K0
Mysql批量插入数据时如何解决重复问题?
插入大批量数据 ,如何过滤掉重复数据?
最近再解决线上数据库存在重复数据的问题,发现了程序的bug,很好解决,有点问题的是,修正线上的重复数据。
Java技术精选
2021/08/12
8960
小程序如何避免多次点击,重复触发事件
作为前端开发,我们经常会遇到的场景,比如用户点击获取验证码按钮时,没有反应,大部分用户都会接着点击,这就会造成用户收到多条验证码,这是因为后台api请求比较慢,而客户端体验又做得不到位,导致用户以为没点击到或者是页面假死,在上次请求还没处理完,就再次点击按钮。这对于我们开发来说,这是bug。
honey缘木鱼
2018/09/26
6.3K0
Jquery 实现表单提交按钮变灰,防止多次点击提交重复数据
表单提交时候我们应该控制提交按钮,不能点击多次进行数据的重复提交。要不然就会有冗余的重复的数据在系统中,造成系统出现数据垃圾。jQuery很简单的就可以实现对表单提交按钮控制,下面就是相关的例子和代码。
全栈程序员站长
2022/06/29
4K0
MySQL唯一索引重复插入数据解决方案总结
在日常开发中,我们会经常遇到某一张表中某列或者多列的值是唯一的,不能重复插入同一个值。遇到这样的设计,我们一般会设置一个unique的索引。也就是在要求值不能是重复的列或者多列上添加一个唯一索引。例如,会执行这一条SQL语句:
兔云小新LM
2021/07/18
5.8K0
MySQL唯一索引重复插入数据解决方案总结

相似问题

插入行时出现食品杂货crud错误

10

杂货CRUD连接表

20

url重复代码点火器和杂货crud

11

CodeIgniter和杂货CRUD

013

杂货CRUD ajax性能

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文