Codeigniter排序页面内容

时间:2015-12-29 20:22:46

标签: php codeigniter sorting

我在我的网站上使用带有codeigniter的php。在这里,我有一些批次(模型),我想按时间,类别等排序(对于我在页面上有链接的每种排序类型)。现在我有下一个代码,但它不起作用(页面没有排序)。这是我的控制器:

<?php
    defined('BASEPATH') OR exit('No direct script access allowed');

class Gamezone extends CI_Controller {

    public function index()
    {
       if (sizeof($_GET) > 0) {
           $sortType = $_GET['sortType'];
       } else {
           $sortType = 0;
       }
       $this->lang->load('auth', $this->language_lib->detect());
       $data['aukcion'] = 'Gamezone';
       $this->load->model('auctions_model');
       $data['auct'] = $this->auctions_model->game_zones($sortType);
       $this->load->view('/common/header_view',$data);
       $this->load->view('gamezone_view',$data);
       $this->load->view('/common/footer_view',$data);
   }
}

这是我的模型中的方法game_zones($ sortType):

public function game_zones($type) {
    switch ($type) {
        case 1:
            $this->db->order_by('start_time', 'desc');      
            break;
        case 2:
            $this->db->order_by('category', 'desc');
            break;
        case 3:
            $this->db->order_by('genre', 'desc');
            break;
        default:
            break;
    }
    $query = $this->db->get_where('ay_lots', array('game_zone' => 1));
    $result = $query->result();
    return $result;
}

我做索引的ajax请求以提供这样的排序:

function sortAuctions(sortType) {
   $.ajax({
       type: 'GET',
       url: '/gamezone/index',
       data: { 'sortType' : sortType },
       success: function(data) {

           window.location = '/gamezone';
       }
   }); 
}

我做错了什么?

1 个答案:

答案 0 :(得分:0)

您的ajax呼叫在收到成功回复后会重定向。

您似乎已将视图设置为处理排序,并且您很可能希望使用指示排序的查询参数重定向到索引操作。一个ajax方法,因为看起来你正在尝试使用你的javascript,通常会采取某种api响应或剥离html视图的渲染并操纵dom来更新响应。