我是初学者,表单验证加了xss_clean,就验正不通过?求解
代码$this->form_validation->set_rules("username", "Username", "trim|required|min_length|max_length|xss_clean");
我加了xss_clean函数验证后,就出现错误提示
Unable to access an error message corresponding to your field name Username.(xss_clean)
不知道为什么?请大神解答下!!!
與 xss_clean 無關
純粹沒有 username 這個 input 欄位送往後台吧 ? Closer 发表于 2016-6-17 09:33
與 xss_clean 無關
純粹沒有 username 這個 input 欄位送往後台吧 ?
有值的,去掉xss_clean 就可以验证通过 桂林小菜鸟 发表于 2016-6-17 09:42
有值的,去掉xss_clean 就可以验证通过
你提供這隻程式的「控制器」與「視圖」的代碼來看看 Closer 发表于 2016-6-17 10:02
你提供這隻程式的「控制器」與「視圖」的代碼來看看
视图
<form action="http://localhost/index.php?/blog/" method="post" accept-charset="utf-8">
<h5>Username</h5>
<input type="text" name="username" value="" size="50" />
<h5>Password</h5>
<input type="text" name="password" value="" size="50" />
<h5>Password Confirm</h5>
<input type="text" name="passconf" value="" size="50" />
<h5>Email Address</h5>
<input type="text" name="email" value="" size="50" />
<div><input type="submit" value="Submit" /></div>
</form>
控制器
class Blog extends CI_Controller {
public function index()
{
$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
$this->form_validation->set_rules(
'username', 'Username',
'required|min_length|max_length|xss_clean',
array(
'required'=> 'You have not provided %s.',
'is_unique' => 'This %s already exists.'
)
);
$this->form_validation->set_rules('password', 'Password', 'required');
$this->form_validation->set_rules('passconf', 'Password Confirmation', 'required|matches');
$this->form_validation->set_rules('email', 'Email', 'required|valid_email|is_unique');
if ($this->form_validation->run() == FALSE)
{
$this->load->view('Blog');
}
else
{
$this->load->view('formsuccess');
}
}
} 桂林小菜鸟 发表于 2016-6-17 10:04
视图
剛剛查了一下,需要載入這個 :
$autoload['helper'] = array('security'); // 於 autoload.php
或
$this->load->helper('security'); // 於 該控制器 Closer 发表于 2016-6-17 10:10
剛剛查了一下,需要載入這個 :
$autoload['helper'] = array('security'); // 於 autoload.php
或
非常感谢你,原来是这个问题。
页:
[1]