2016-09-28 87 views
0

这里是我的控制器笨表单验证

function register(){ 
     $_POST['username'] = $_GET['username']; 
       $this->load->library('form_validation'); 
       $this->load->helper('form'); 
     $this->form_validation->set_rules('username', 'username', 'required|trim|xss_clean|min_length[5]'); 
     if($this->form_validation->run()) 
     { 

     } 
     var_dump(form_error('username')); 
} 

我可以测试打开了该功能与家庭/注册?用户名=测试??? 我试过了,但不起作用

+0

你的意思是'HTTP://本地主机的/ home /注册用户名= test'? –

+0

是的,我想测试这个和echo form_error:D –

+0

检查这些链接[stack question 1](http://stackoverflow.com/questions/10883949/codeigniter-validation-possible-to-validate-get-query-strings) [堆栈问题2](http://stackoverflow.com/questions/10524992/how-do-i-validate-a-form-field-in-codeigniter-when-using-get-parameters) –

回答

0

好吧,除了你的问题有点混乱,我认为答案是否定的。您无法使用来自url参数的获取请求测试发布请求。

测试发布请求的方式是发布所需的测试数据。

但我确信这是正确的,但是,正如我所说你的问题有点混乱,所以如果我错过了你的观点,我提前道歉。

如果您想从帖子中测试验证,您可以在任何阵列上使用验证规则。

$data = array(
    'username' => 'johndoe', 
    'password' => 'mypassword', 
    'passconf' => 'mypassword' 
); 

$this->form_validation->set_data($data); 

你可以阅读更多有关在这里:http://www.codeigniter.com/user_guide/libraries/form_validation.html#validating-an-array-other-than-post