|
发表于 2015-1-7 14:03:40
|
显示全部楼层
本帖最后由 Closer 于 2015-1-7 14:19 编辑
form_open() 你可能要重新看一下他的用法
他是幫你製作一個 <form> 標籤及其參數
而不是一個啟用 form 的函式
他不像 session_start() 那種
使用前需要開啟
另外,表單驗證類你沒有將它啟用
標準的用法大概像這樣:
PHP复制代码
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Test extends CI_Controller {
function __construct () {
parent ::__construct ();
//載入 form,這樣 form_open() 才能用
$this->load->helper('form');
//如果在 config 有寫成一個驗證檔案才載入
$this->load->library('form_validation');
}
public function index (){
$this->form_validation->set_rules(
'content', '發問', 'trim|required|max_length[200]');
$this->form_validation->set_rules(
'secret', '悄悄話', 'max_length[1]|numeric');
if ($this->form_validation->run() == FALSE){
//審核未過,只顯示 view
$this->layout->view('v_test', $data);
}else{
//審核通過
//取得所有 POST 值,並過濾 XSS 語法
$test = $this->input->post(NULL, TRUE);
//寫入資料表並導頁
$ad = array(
'name'=>$test['name'],
'password'=>$test['password'],
'email'=>$test['email'] //記得別多打一個逗號
);
$this->db->insert('test',$ad);
redirect ('', 'refresh'); //導向首頁
}
}
}
?>
复制代码
|
|