php ci 提交当前表单,CI框架表单验证实例详解

本文实例讲述了CI框架表单验证的方法。分享给大家供大家参考,具体如下:

1、form头部信息的自动输出函数(view)

$attributes = array('class' => 'email', 'id' => 'myform');

echo form_open('email/send', $attributes);

//上面一行代码输出:

//

/*

* form_open_multipart()

* 函数用法同上,加上了文件上传的信息 上传方式默认为post

*/

?>

2、设置验证规则(controller)

//注意验证规则的变量名必须设置成 config

$config = array(

array(

'field' => 'username',

'label' => '用户名',

'rules' => 'required'

),

array(

'field' => 'password',

'label' => '密码',

'rules' => 'required'

),

array(

'field' => 'passconf',

'label' => '确认密码',

'rules' => 'required|matches[password]'

),

array(

'field' => 'tel',

'label' => '手机',

'rules' => 'required|integer|exact_length[11]'),

array(

'field' => 'email',

'label' => '邮箱',

'rules' => 'required|valid_email'

)

);

//上面的会自动

//单独设置规则

$this->form_validation->set_rules('username', 'Username', 'trim|required|min_length[5]|max_length[12]|xss_clean');

$this->form_validation->set_rules('password', 'Password', 'trim|required|matches[passconf]|md5');

$this->form_validation->set_rules('passconf', 'Password Confirmation', 'trim|required');

$this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email');

?>

3、规则对应的错误提示(controller)

$this->form_validation->set_message('required', '必须填写');

$this->form_validation->set_message('valid_email', '不是有效的email');

?>

4、运行检查错误信息(controller)

$this->load->helper(array('form', 'url'));

//加载CI表单验证库

$this->load->library('form_validation');

//----------------------------------------

# 验证规则及错误信息代码放在这里

//----------------------------------------

if ($this->form_validation->run() == FALSE){

//提交失败 重新加载表单部分

$this->load->view('myform');

}else{

//提交成功 表单处理

//跳转成功页面

$this->load->view('formsuccess');

}

}

5、错误信息的输出函数(view)

//1.一股脑儿的全部输出(放在表单标签的上方即可)

echo validation_errors();

//2.针对单个表单单独输出(放在单个标签附近 参数为对应表单元素的域名)

echo form_error('password');

//3.针对单个表单输出的时候 需要修改定界符 显示错误信息样式(控制器里设置)

$this->form_validation->set_error_delimiters('', '');

//设置成内联元素比较好

?>

6、错误后 重新回填表单(view)

//一般元素 回填(放在标签的values属性中输出)

echo set_value('email');

//特殊元素select/checkbox/radio 第三个参数为true时 默认被选中

//第二个参数 是对应的表单元素的实际值

echo set_select('myselect', 'three'); //放在option的空白属性里

echo set_checkbox('mycheck[]', '1'); //放在checkbox的空白属性里

echo set_radio('myradio', '2'); //放在radio的空白属性里

?>

html代码:

My Form
Username
Password
Password Confirm
Email Address

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值