【问题标题】:jQuery Connected Sortable Lists, Save Order to MySQLjQuery 连接的可排序列表,将顺序保存到 MySQL
【发布时间】:2011-01-31 08:59:53
【问题描述】:

希望使用类似这个演示的东西可以在两列内和两列之间拖动项目,并实时更新它们的顺序或使用“保存”按钮更新到 MySQL。重点是您可以进行更改并稍后返回页面以查看或更新您的订单。

http://pilotmade.com/examples/draggable/

只为一列做这件事很好,但是当我尝试传递两列的顺序时,问题似乎是使用 jQuery 将多个序列化数组传递给 PHP/MySQL 更新脚本。

任何见解将不胜感激。

如果你往下看,我想通过说...

可排序1
entry_1 => 0
entry_5 => 1

可排序2
entry_3 => 0
entry_2 => 1
entry_4 => 2

编辑:这最终成功了

HTML

<ol id="sortable1"><li id="entry_####">blah</li></ol>

jQuery

<script type="text/javascript">
$(function() 
{
    $("#sortable1, #sortable2").sortable(
    {
        connectWith: '.connectedSortable',
        update : function () 
        { 
            $.ajax(
            {
                type: "POST",
                url: "phpscript",
                data: 
                {
                    sort1:$("#sortable1").sortable('serialize'),
                    sort2:$("#sortable2").sortable('serialize')
                },
                success: function(html)
                {
                    $('.success').fadeIn(500);
                    $('.success').fadeOut(500);
                }
            });
        } 
    }).disableSelection();
});

这是 PHP 查询

parse_str($_REQUEST['sort1'], $sort1);
foreach($sort1['entry'] as $key=>$value)
{
do stuff
}

【问题讨论】:

  • 我们可以查看您的代码,以便我们了解您出错的地方吗?
  • 我进行了编辑以显示 jQuery 和 html 代码。我想我的问题实际上是关于如何将序列化数据从这里传递到 php 插入/更新脚本。
  • 您到底在哪里遇到问题是序列化数据格式不正确,或者您只是不确定如何将发布的数据导入数据库?

标签: php jquery mysql jquery-ui-sortable


【解决方案1】:

我要做的就是把它们分开

   data    :
    {
      sort1:$('#sortable1').sortable('serialize'),
      sort2:$('#sortable2').sortable('serialize')
    }

然后,当您发布时,您可以获取请求并根据需要进行设置,我希望这是有道理的

所以我要做的就是这个

parse_str($_REQUEST['sort1'],$sort1); 

foreach($sort1 as $key=>$value){
    //do sutff;
}

【讨论】:

  • 这是有道理的,回复:你上面关于我的问题的问题,我想现在我知道我可以将序列化数据分成两部分,它们现在是否作为 $_POST['sort1'] 传递和 $_POST['sort2'] ?我“认为”如果可行,我应该一切就绪。感谢您的快速回复。
  • 最后一个问题...是获取插入数据库的数组值的正确循环: foreach($_POST['sort1'] as $key=>$value) { do this }以为我明白这应该如何工作......
  • 成功了,一切正常,感谢 mmcgrail 让我度过了愉快的一天!
猜你喜欢
  • 2012-10-23
  • 1970-01-01
  • 1970-01-01
  • 2013-05-14
  • 1970-01-01
  • 2013-12-10
  • 1970-01-01
  • 2011-11-12
  • 1970-01-01
相关资源
最近更新 更多