$res = $this->db->select('id,name')
->from('table_name')
->where('id >=', 5) // 注意欄位名後需加空格
->limit(3, 2) // CI 順序:limit($limit, $offset),與 SQL 相反
->order_by('id desc')
->get();
var_dump($res->result());
echo $this->db->last_query(); // 調試輸出最後執行的 SQL
文件:application/core/MY_Controller.php
<?php
class MY_Controller extends CI_Controller {
public function __construct() {
parent::__construct(); // 必須先調用父構造
// 登錄驗證、權限檢查、公共數據加載...
}
}
配置:application/config/config.php 設置 $config['subclass_prefix'] = 'MY_';
文件:application/models/User_model.php
class User_model extends CI_Model {
public function getAll() {
return $this->db->get('table_name')->result();
}
}
控制器調用:
$this->load->model('User_model', 'user'); // 別名 user
$list = $this->user->getAll();
$this->load->view('user/index', ['list' => $list]);
$this->load->helper('url'); // 或配置自動加載 $autoload['helper'] = ['url'];
// 視圖中生成可擴展鏈接
<form action="<?= site_url('user/insert') ?>" method="post">
// 路由配置 application/config/routes.php
$route['rouxx/showxx/(:num).html'] = 'rou/show/$1';
$config['total_rows'] = $allnum; // 總記錄數
$config['per_page'] = 20; // 每頁條數
$config['num_links'] = 3; // 當前頁前後顯示頁碼數
$config['base_url'] = '/CI/index.php/page/pagelist';
$config['use_page_numbers'] = true; // 使用實際頁碼而非偏移量
$this->load->library('pagination');
$this->pagination->initialize($config);
echo $this->pagination->create_links(); // 輸出分頁鏈接
// 控制器獲取當前頁
$page = $this->uri->segment(3) ?: 1;
$start = ($page - 1) * $perPage;
$list = $this->test_m->user_select_limit($start, $perPage);
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = 2000; // KB
$config['max_width'] = 1024;
$config['max_height'] = 768;
$this->load->library('upload', $config);
if ($this->upload->do_upload('upfile')) { // 表單 name='upfile'
$data = ['upload_data' => $this->upload->data()];
} else {
$error = ['error' => $this->upload->display_errors()];
}
$config['encryption_key'] = 'adb8bf6d0ac4e17b42a80941582497a4'; // 必須設置
$this->load->library('session');
// 寫入
$this->session->set_userdata(['id' => 3, 'name' => 'jack']);
// 讀取
$name = $this->session->userdata('name');
// 刪除
$this->session->unset_userdata('name');
// 閃數據(僅一次請求有效)
$this->session->set_flashdata('test', 'aaaaa');
$test = $this->session->flashdata('test');
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_encrypt_cookie'] = TRUE;
$config['sess_use_database'] = FALSE; // 改為 TRUE 需建表 ci_sessions
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;