请高手写个 表单 查询的 简单过程 ,谢谢,我没有头绪
我起初是这样想的 POST 提交到 Action <?=base_url()?> p/result (已经设置 route了) 是 Person ,Method 是 result(){}Controller function result(){
$username = $this->input->post('Username');
$data['result'] = $this->person_model->get_result($username);
$this->load->views('result.php',$data);
}
Model:接收参数
get_result($username){
$this-db->like('PersonName',$username);
$query = $this->db->get_where('person');
return ...数组
}
View
[ search.php ]
<form action='p/result'>
<input name='Username">
<input type="submit">
[ result.php ]
<foreach ...> (数组接收)
像我这样写 有问题吗? 如果是多条件查询呢( 比如 按姓名或手机号码 查询呢,我是新手,请多多指导,谢谢
本帖最后由 Closer 于 2014-10-21 11:09 编辑
我是學沒幾個月的新手,方法有點老土,請見諒
下面的是我的方法——
V:多個 input 名稱指定為 sea0 / sea1 / sea2 / ...
按下按鈕後指向 function sea
C:function sea
建立一個相對應各個 sea 的欄位名稱陣列
(sea0對上id , sea1對上name , ... )
(這是從index複製過來的,在 function sea 這邊只是要計算次數)
用 for 迴圈取得 sea.$x 的 POST 值
計算陣列長度,決定要取幾個 POST 的 sea0... 欄位
傳回 URL 回 function index ,用 GET 方式
(傳回前的所有 POST 值要先經由 rawurlencode() 過濾)
function index
一樣建立相對應的欄位陣列及欄位數量值
取得網址的 GET 搜尋值,由欄位數量決定執行幾次
若沒有取到某欄位的 GET 值就給空值,這樣保證 GET 的總數不會減少
將欄位名稱、欄位值、數量及其他排序參數傳入M
M:檢查各個欄位名稱的後兩碼是否有 >= <= 等等判斷符號
用以決定搜尋值要用 $this->db->where(); 或 $this->db->like();
兩個 foreach 迴圈取搜尋到的陣列值
回傳給C一個變數,並導入V用 for 迴圈輸出各筆資料
Closer 发表于 2014-10-21 10:33
我是學沒幾個月的新手,方法有點老土,請見諒
下面的是我的方法——
V:多個 input 名稱指定為 sea0 / sea ...
兄弟,我们可以用 MSN 或者QQ 交流下吗?这样 论坛我还是不大明白,谢谢
本帖最后由 Closer 于 2014-10-23 09:52 编辑
{:soso_e170:}
页:
[1]