jQuery sortable - 数据库写入不起作用

时间:2014-04-08 15:17:30

标签: javascript php jquery mysql jquery-ui

我对jquery中的可排序函数以及通过ajax在数据库中写入的可能性有疑问。

我有一个元素列表,希望对它们进行排序,并在我的数据库中保存新的顺序:

<ol id="sortable" class="ui-sortable">
     <li class="ui-state-default ubungte" id="item-1" name="item">...</li>
     <li class="ui-state-default ubungte" id="item-2" name="item">...</li>
     <li class="ui-state-default ubungte" id="item-3" name="item">...</li>
     <li class="ui-state-default ubungte" id="item-4" name="item">...</li>
     <li class="ui-state-default ubungte" id="item-5" name="item">...</li>
</ol>

在这里我的jquery:

$(function() {
        $( "#sortable" ).sortable({
            placeholder: "ui-state-highlight",
            update: function (event, ui) {
                var data = $(this).sortable('serialize');

                // POST to server using $.post or $.ajax
                $.ajax({
                    data: data,
                    type: 'POST',
                    url: 'updateDB.php'
                });
            }
        });
        $( "#sortable" ).disableSelection();
});

这里是updateDB.php的代码

$i = 0;

foreach ($_POST['item'] as $value) {
    $query = "UPDATE trainingseinheiten SET Reihenfolge = ".$i." WHERE ID = ".$value;
    mysql_query($query) or die('Error, insert query failed');
    $i++;
}

我可以对项目进行排序,但是当我刷新页面时,没有任何更改。似乎我的更改未保存。

你能帮帮我吗?是什么让我错了?

0 个答案:

没有答案