首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MySql中插入jQuery的可排序列表

在MySql中插入jQuery的可排序列表
EN

Stack Overflow用户
提问于 2014-12-04 08:00:52
回答 1查看 339关注 0票数 2

我试图将jquery的可排序列表值插入到MySql中。在插入时,我在MySql中循环存在问题。

我已经整理了像这样的东西

代码语言:javascript
复制
-------------
 Sorted List
-------------
   did-1
   fid-1
   fid-2
   fid-3

之后,我使用了“序列化”来获取这些排序列表

代码语言:javascript
复制
$('.sortable').sortable({
connectWith: '.sortable',
tolerance: 'pointer',
update: function (event, ui) {
    $('#add_list').click(function(){        
        var data = $('#drop_list1').sortable('serialize');
        $.ajax({
            data: data,
            type: 'POST',
            url: 'addnewlist.php',
            success: function(data){                    
            }
        });
    }); 
}

我想要的是--对每一个'did‘进行多次插入,应该插入一个'fid’。在我的MqSql - '(did-1,fid-1)(did-1,fid-2)(did-1,fid-3)‘

我已经在我的PHP中尝试过这个。

代码语言:javascript
复制
foreach($_POST['doc'] as $doc)
{
    for($i=0;$i<count($_POST['doc']);$i++)
    {
        $form=$_POST[$i]['form'];
        echo $sql="INSERT INTO addnewdoc(doc_id,form_id) VALUES ($doc,$form)";
        $res=parent::_executeQuery($sql);
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-04 08:49:59

如果我正确地理解了这一点,那么您需要遍历文档,然后遍历每个文档的表单。这样行吗?

代码语言:javascript
复制
foreach($_POST['doc'] as $doc)
{
    foreach($_POST['form'] as $form)
    {
        echo $sql="INSERT INTO addnewdoc(doc_id,form_id) VALUES ($doc,$form)";
        $res=parent::_executeQuery($sql);
    }
}

最后运行每个组合的insert查询。最好将所有的值构建到一个查询中,然后执行一次。例如:

代码语言:javascript
复制
$sql = "INSERT INTO addnewdoc(doc_id,form_id) VALUES ";
$values = Array();
foreach($_POST['doc'] as $doc)
{
    foreach($_POST['form'] as $form)
        $values[] = "($doc,$form)";
}
$sql .= join(',', $values);
$res=parent::_executeQuery($sql);

它将所有值收集到一个数组中,然后将每个值连接到一个由逗号分隔的字符串中。然后,可以运行单个insert查询来插入所有值。

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

https://stackoverflow.com/questions/27288942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档