<html>
<head>
<title>My Form</title>
</head>
<body>
<form action = "" method = "">
<?php echo validation_errors(); ?>
<?php echo form_open('form'); ?>
<h5>Name</h5>
<input type = "text" name = "name" value = "" size = "50" />
<div><input type = "submit" value = "Submit" /></div>
</form>
</body>
</html>
<html>
<head>
<title>My Form</title>
</head>
<body>
<h3>Your form was successfully submitted!</h3>
<p><?php echo anchor('form', 'try it again!'); ?></p>
</body>
</html>
<?php class Form extends CI_Controller { public function index() { /* Load form helper */ $this->load->helper(array('form')); /* Load form validation library */ $this->load->library('form_validation'); /* Set validation rule for name field in the form */ $this->form_validation->set_rules('name', 'Name', 'required'); if ($this->form_validation->run() == false) { $this->load->view('myform'); } else { $this->load->view('formsuccess'); } } } ?>
$route['validation'] = 'Form';
http://yoursite.com/index.php/validation
| 规则 | Parameters | 说明 | 示例 |
|
required
|
No | 如果表单元素为空,则返回 FALSE。 | |
|
matches
|
Yes | 如果表单元素与参数中的元素不匹配,则返回 FALSE。 | matches[form_item] |
|
regex_match
|
Yes | 如果表单元素与正则表达式不匹配,则返回 FALSE。 | regex_match[/regex/] |
|
differs
|
Yes | 如果表单元素与参数中的元素没有不同,则返回 FALSE。 | differs[form_item] |
|
is_unique
|
Yes | 如果表单元素对于参数中的表和字段名称不是唯一的,则返回 FALSE。注意-此规则需要启用 Query Builder 才能工作。 | is_unique[table.field] |
|
min_length
|
Yes | 如果表单元素短于参数值,则返回 FALSE。 | min_length[3] |
|
max_length
|
Yes | 如果表单元素长于参数值,则返回 FALSE。 | max_length[12] |
|
exact_length
|
Yes | 如果表单元素不是参数值,则返回 FALSE。 | exact_length[8] |
|
greater_than_equal_to
|
Yes | 如果表单元素小于或等于参数值或不是数字,则返回 FALSE。 | greater_than_equal_to[8] |
|
greater_than_equal_to
|
Yes | 如果表单元素小于参数值或不是数字,则返回 FALSE。 | greater_than_equal_to[8] |
|
less_than
|
Yes | 如果表单元素大于或等于参数值或不是数字,则返回 FALSE。 | less_than[8] |
|
less_than_equal_to
|
Yes | 如果表单元素大于参数值或不是数字,则返回 FALSE。 | less_than_equal_to[8] |
|
in_list
|
Yes | 如果表单元素不在预定列表中,则返回 FALSE。 | in_list[red,blue,green] |
|
alpha
|
No | 如果表单元素包含字母字符以外的任何内容,则返回 FALSE。 | |
|
alpha_numeric
|
No | 如果表单元素包含字母数字字符以外的任何内容,则返回 FALSE。 | |
|
alpha_numeric_spaces
|
No | 如果表单元素包含字母数字字符或空格以外的任何内容,则返回 FALSE。应该在trim之后使用,以避免在开头或结尾出现空格 | |
|
alpha_dash
|
No | 如果表单元素包含字母数字字符、下划线或破折号以外的任何内容,则返回 FALSE。 | |
|
numeric
|
No | 如果表单元素包含数字字符以外的任何内容,则返回 FALSE。 | |
|
integer
|
No | 如果表单元素包含除整数以外的任何内容,则返回 FALSE。 | |
|
decimal
|
No | 如果表单元素包含除十进制数以外的任何内容,则返回 FALSE。 | |
|
is_natural
|
No | 如果表单元素包含除自然数以外的任何内容-0、1、2、3 等,则返回 FALSE。 | |
|
is_natural_no_zero
|
No | 如果表单元素包含自然数以外的任何内容,但不包含零-1、2、3 等,则返回 FALSE。 | |
|
valid_url
|
No | 如果表单元素不包含有效的 URL,则返回 FALSE。 | |
|
valid_email
|
No | 如果表单元素不包含有效的电子邮件地址,则返回 FALSE。 | |
|
valid_emails
|
No | 如果逗号分隔列表中提供的任何值不是有效电子邮件,则返回 FALSE。 | |
|
valid_ip
|
No | 如果提供的 IP 无效,则返回 FALSE。接受"ipv4"或"ipv6"的可选参数来指定 IP 格式。 | |
|
valid_base64
|
No | 如果提供的字符串包含有效 Base64 字符以外的任何内容,则返回 FALSE。 |