将可排序列表转换为查询并检索并再次显示

Posted

技术标签:

【中文标题】将可排序列表转换为查询并检索并再次显示【英文标题】:Turn a sortable list into a query and retrieve it and display it again 【发布时间】:2017-06-09 01:49:49 【问题描述】:

这里有一个使用JQuery UI sortable event 创建字符串的示例,我想像这样获取多个字符串

$string: item[]=4&item[]=1&item[]=2

并回调一个选定的内容以显示在页面上。我打算将这些 $string 存储在 mysql 表中。

基本上我将如何接收所述 $string 并使用它以特定顺序显示某些内容

这是一个 JSfiddle,向您展示我处于什么阶段。

https://jsfiddle.net/mjfncugx/


html

<ul id="sortable">
        <li id="item_1">test1</li>
        <li id="item_2">test2</li>
        <li id="item_3">test3</li>
        <li id="item_4">test4</li>
        <li id="item_5">test5</li>
      </ul>
      Query String: <span></span>

jQuery 用户界面

$(document).ready(function() 
  $('ul').sortable(
    axis: 'y',
    stop: function(event, ui) 
      var data = $(this).sortable('serialize');
      $('span').text(data);
      /*$.ajax(
          data: oData,
          type: 'POST',
          url: '/your/url/here'
      );*/
    
  );
);

【问题讨论】:

所以现在您需要编写一些 php 代码来接受该数据并查询数据库,并将一些数据发送回 javascript。这是一个宽泛的问题。编写 PHP 代码后,如果遇到问题,请回来询问相关问题。 Serialize 正在返回准备好获取请求的数据。因此,使用 ajax 向 php 页面发送 get 请求,然后该页面可以处理 get 数据并将其发送到 db 是您最简单的选择。 我不是很具体,我真正要问的是如何从数据库中选择一个特定的 $string 并使用 PHP 重新创建它以呈现在 HTML 中。我该怎么做? 首先您阅读PHP Manual,然后您会获得一些关于做事的好方法的好技巧from lets say here 但是在SO 我们不为您编写代码 好吧,很公平 :),但是我将如何获取 $string 并从中创建一个 html 有序列表?说我有 item[]=4&item[]=1&item[]=2 我将如何使用它来订购列表? 【参考方案1】:

当你保存在 Db 中时,只需使用这个

str_replace('[]=', '_', 'item[]=2&item[]=1&item[]=3&item[]=4&item[]=5');

插入后..

我假设 $data = item_2&amp;item_1&amp;item_3&amp;item_4&amp;item_5; 来自 DB。

<?php
$data = !empty($data) ? explode('&', $data) : '';
?>


<ul id="sortable">
<?php
    if(!is_array($data))
    
?>
    <li id="item_1">test1</li>
    <li id="item_2">test2</li>
    <li id="item_3">test3</li>
    <li id="item_4">test4</li>
    <li id="item_5">test5</li>
    <?php
     else 
    ?>
        foreach($data as $data_row)
        
            ?>
            <li id="<?= $data_row ?>"><?= str_replace('_', '', $data_row); ?></li>
            <?php
        
    <?php
    
    ?>
</ul>

可能有语法错误,请纠正。

【讨论】:

以上是关于将可排序列表转换为查询并检索并再次显示的主要内容,如果未能解决你的问题,请参考以下文章

将列表写入 pandas 数据帧到 csv,从 csv 读取数据帧并再次转换为列表而无需字符串

对对象列表进行排序并转换为对象列表

从数据库中读取数据并存储在数组列表中,但数组列表显示为空

jQuery UI 将可排序列表保存到 PHP 数组

在 MS Access 中以分号分隔的列表检索电子邮件地址的子查询

我的共享首选项存储列表视图的数据并检索它不起作用