【问题标题】:How to get order by date descending order in codeigniter如何在codeigniter中按日期降序获取订单
【发布时间】:2016-12-16 19:46:15
【问题描述】:

我想显示时间戳降序,但我的查询不起作用,这是我的代码:

 $this->db->order_by("DATE(field_name)", "DESC");

我得到这个,但是当我在jquery数据表中显示时,它变成了升序,如何解决这个问题?

【问题讨论】:

  • 分享整个查询?
  • 试试这个 $this->db->order_by(STR_TO_DATE(field_name, '%M %d, %Y'), "DESC");

标签: php jquery codeigniter datatables


【解决方案1】:

您需要在查询中删除 DATE。

请在下面试试

$this->db->order_by("field_name", "DESC");

here filed_name = 您的表字段值(在这种情况下为时间戳。)

另外,如果它不起作用,请提供您的错误。

【讨论】:

    【解决方案2】:

    在 jQuery Datatable 中,您有一个配置选项来对表进行排序,默认情况下是第一个。如果您想保持特定的数据顺序,请确保它处于良好的位置。

    $('#myDataTable').DataTable({
        order: [[0, 'desc']],
    });
    

    第一个参数0 是要排序的列的索引(这里是第一列,1 是第二列,等等)。

    或者,您可以禁用数据表排序,将一个空数组传递给order 选项:

    $('#myDataTable').DataTable({
        order: [],
    });
    

    【讨论】:

      【解决方案3】:

      这里的问题是 Jquery Datatable,默认情况下按表的第一列排序。

      如果启用排序(排序),则 DataTables 将在初始化期间执行第一次通过排序。使用此参数,您可以定义执行订单的列以及排序方向。顺序必须是数组数组,每个内部数组由两个元素组成:

      Datatables Order上查看更多信息

      这里有两个选项,都在JS代码中,不用担心php代码。

      1. 数据表中的顺序:

      像这样:

      $("#table").dataTable({
          "order":[[positionofcolumtoorder,'desc']]
      });
      
      1. 在初始加载期间从 Datatables 中删除 order 函数

      这样:

      $('#table').dataTable( {
          "order": []
      } );
      

      【讨论】:

        【解决方案4】:

        试试这个代码:

        $this->db->order_by("field_name", "DESC");
        

        【讨论】:

          【解决方案5】:
          $this->db->order_by("field_name", "DESC");
          

          【讨论】:

            猜你喜欢
            • 2016-05-10
            • 2015-10-23
            • 1970-01-01
            • 2012-09-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2022-11-03
            相关资源
            最近更新 更多