search
HomeBackend DevelopmentPHP TutorialAnalysis on form validation of CI framework
Analysis on form validation of CI frameworkJun 14, 2018 pm 01:47 PM
ci frameworkform validation

This article mainly introduces the CI framework form verification method. It summarizes and analyzes the CI framework form verification rule settings, error prompts, view display and other related operating techniques and usage methods in the form of examples. Friends in need can refer to it

The example in this article describes the CI framework form verification method. Share it with everyone for your reference, the details are as follows:

1. Automatic output function of form header information (view)

<?php
 $attributes = array(&#39;class&#39; => &#39;email&#39;, &#39;id&#39; => &#39;myform&#39;);
 echo form_open(&#39;email/send&#39;, $attributes);
 //上面一行代码输出:
 //<form method="post" accept-charset="utf-8" action="http://example.com/index.php/email/send" id="myform" class="email"/>
 /*
 * form_open_multipart()
 * 函数用法同上,加上了文件上传的信息 上传方式默认为post
 */
?>

2. Set verification rules (controller)

<?php
//注意验证规则的变量名必须设置成 config
$config = array(
        array(
           &#39;field&#39;  => &#39;username&#39;,
           &#39;label&#39;  => &#39;用户名&#39;,
           &#39;rules&#39;  => &#39;required&#39;
         ),
        array(
           &#39;field&#39;  => &#39;password&#39;,
           &#39;label&#39;  => &#39;密码&#39;,
           &#39;rules&#39;  => &#39;required&#39;
         ),
        array(
           &#39;field&#39;  => &#39;passconf&#39;,
           &#39;label&#39;  => &#39;确认密码&#39;,
           &#39;rules&#39;  => &#39;required|matches[password]&#39;
         ),
        array(
           &#39;field&#39;  => &#39;tel&#39;,
           &#39;label&#39;  => &#39;手机&#39;,
           &#39;rules&#39;  => &#39;required|integer|exact_length[11]&#39;),
        array(
           &#39;field&#39;  => &#39;email&#39;,
           &#39;label&#39;  => &#39;邮箱&#39;,
           &#39;rules&#39;  => &#39;required|valid_email&#39;
         )
      );
//上面的会自动
//单独设置规则
$this->form_validation->set_rules(&#39;username&#39;, &#39;Username&#39;, &#39;trim|required|min_length[5]|max_length[12]|xss_clean&#39;);
$this->form_validation->set_rules(&#39;password&#39;, &#39;Password&#39;, &#39;trim|required|matches[passconf]|md5&#39;);
$this->form_validation->set_rules(&#39;passconf&#39;, &#39;Password Confirmation&#39;, &#39;trim|required&#39;);
$this->form_validation->set_rules(&#39;email&#39;, &#39;Email&#39;, &#39;trim|required|valid_email&#39;);
?>

3. Error prompts corresponding to the rules (controller)

<?php
$this->form_validation->set_message(&#39;required&#39;, &#39;必须填写&#39;);
$this->form_validation->set_message(&#39;valid_email&#39;, &#39;不是有效的email&#39;);
?>

4. Run check error message (controller)

<?php
 $this->load->helper(array(&#39;form&#39;, &#39;url&#39;));
 //加载CI表单验证库
 $this->load->library(&#39;form_validation&#39;);
 //----------------------------------------
 # 验证规则及错误信息代码放在这里
 //----------------------------------------
 if ($this->form_validation->run() == FALSE){
   //提交失败 重新加载表单部分
   $this->load->view(&#39;myform&#39;);
 }else{
   //提交成功 表单处理
   //跳转成功页面
   $this->load->view(&#39;formsuccess&#39;);
 }
}

5. Error message output function (view)

<?php
  //1.一股脑儿的全部输出(放在表单标签的上方即可)
  echo validation_errors();
  //2.针对单个表单单独输出(放在单个标签附近 参数为对应表单元素的域名)
  echo form_error(&#39;password&#39;);
  //3.针对单个表单输出的时候 需要修改定界符 显示错误信息样式(控制器里设置)
  $this->form_validation->set_error_delimiters(&#39;<span class="error">&#39;, &#39;</span>&#39;);
  //设置成内联元素比较好
?>

6. Refill the form (view) after an error

<?php
 //一般元素 回填(放在标签的values属性中输出)
 echo set_value(&#39;email&#39;);
 //特殊元素select/checkbox/radio 第三个参数为true时 默认被选中
 //第二个参数 是对应的表单元素的实际值
 echo set_select(&#39;myselect&#39;, &#39;three&#39;); //放在option的空白属性里
 echo set_checkbox(&#39;mycheck[]&#39;, &#39;1&#39;); //放在checkbox的空白属性里
 echo set_radio(&#39;myradio&#39;, &#39;2&#39;);    //放在radio的空白属性里
?>

html code:

<html>
 <head>
  <title>My Form</title>
 </head>
<body>
 <?php echo validation_errors(); ?>
 <?php echo form_open(&#39;form&#39;); ?>
  <h5 id="Username">Username</h5>
  <input type="text" name="username" value="<?php echo set_value(&#39;username&#39;); ?>" size="50" />
  <?php echo form_error(&#39;username&#39;); ?>
  <h5 id="Password">Password</h5>
  <input type="text" name="password" value="<?php echo set_value(&#39;password&#39;); ?>" size="50" />
  <?php echo form_error(&#39;password&#39;); ?>
  <h5 id="Password-nbsp-Confirm">Password Confirm</h5>
  <input type="text" name="passconf" value="<?php echo set_value(&#39;passconf&#39;); ?>" size="50" />
  <?php echo form_error(&#39;passconf&#39;); ?>
  <h5 id="Email-nbsp-Address">Email Address</h5>
  <input type="text" name="email" value="<?php echo set_value(&#39;email&#39;); ?>" size="50" />
  <?php echo form_error(&#39;email&#39;); ?>
  <p><input type="submit" value="Submit" /></p>
</form>
</body>
</html>

The above is the entire content of this article. I hope it will be helpful to everyone’s study. For more related content, please pay attention to the PHP Chinese website!

Related recommendations:

About common image processing methods encapsulated in CI framework

About loading views in CI framework views method

The above is the detailed content of Analysis on form validation of CI framework. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
php如何使用CI框架?php如何使用CI框架?Jun 01, 2023 am 08:48 AM

随着网络技术的发展,PHP已经成为了Web开发的重要工具之一。而其中一款流行的PHP框架——CodeIgniter(以下简称CI)也得到了越来越多的关注和使用。今天,我们就来看看如何使用CI框架。一、安装CI框架首先,我们需要下载CI框架并安装。在CI的官网(https://codeigniter.com/)上下载最新版本的CI框架压缩包。下载完成后,解压缩

Laravel开发:如何使用Laravel Validation验证表单请求?Laravel开发:如何使用Laravel Validation验证表单请求?Jun 13, 2023 pm 01:34 PM

Laravel是一个流行的PHPWeb开发框架,它提供了很多方便的功能来加快开发者的工作。其中,LaravelValidation是一种非常实用的功能,它可以帮助我们轻松地验证表单请求和用户输入的数据。本文就将介绍如何使用LaravelValidation验证表单请求。什么是LaravelValidationLaravelValidation是La

如何使用Golang实现Web应用程序的表单验证如何使用Golang实现Web应用程序的表单验证Jun 24, 2023 am 09:08 AM

表单验证是Web应用程序开发中非常重要的一个环节,它能够在提交表单数据之前对数据进行有效性检查,避免应用程序出现安全漏洞和数据错误。使用Golang可以轻松地实现Web应用程序的表单验证,本文将介绍如何使用Golang来实现Web应用程序的表单验证。一、表单验证的基本要素在介绍如何实现表单验证之前,我们需要知道表单验证的基本要素是什么。表单元素:表单元素是指

php如何使用CodeIgniter4框架?php如何使用CodeIgniter4框架?May 31, 2023 pm 02:51 PM

PHP是一种非常流行的编程语言,而CodeIgniter4是一种常用的PHP框架。在开发Web应用程序时,使用框架是非常有帮助的,它可以加速开发过程、提高代码质量、降低维护成本。本文将介绍如何使用CodeIgniter4框架。安装CodeIgniter4框架CodeIgniter4框架可以从官方网站(https://codeigniter.com/)下载。下

PHP中如何使用CI框架PHP中如何使用CI框架Jun 27, 2023 pm 04:51 PM

PHP是一种流行的编程语言,广泛应用于Web开发。CI(CodeIgniter)框架是PHP中最受欢迎的框架之一,它提供了一整套现成的工具和函数库,以及一些流行的设计模式,让开发人员能够更加高效地开发Web应用程序。本文将介绍使用CI框架开发PHP应用程序的基本步骤和方法。了解CI框架的基本概念和结构在使用CI框架之前,我们需要先了解一些基本的概念和结构。下

PHP中的表单验证和过滤方法?PHP中的表单验证和过滤方法?Jun 29, 2023 pm 10:04 PM

PHP作为一种广泛应用于Web开发的脚本语言,其表单验证和过滤是非常重要的一部分。在用户提交表单的过程中,需要对用户输入的数据进行验证和过滤,以确保数据的安全性和有效性。本文将介绍PHP中如何进行表单验证和过滤的方法和技巧。一、表单验证表单验证是指对用户输入的数据进行检查,以确保数据符合特定的规则和要求。常见的表单验证包括对必填项的验证、邮箱格式、手机号码格

php如何使用CI4框架?php如何使用CI4框架?Jun 01, 2023 pm 02:40 PM

PHP是一种广泛使用的服务器端脚本语言,而CodeIgniter4(CI4)是一个流行的PHP框架,它提供了一种快速而优秀的方法来构建Web应用程序。在这篇文章中,我们将通过引导您了解如何使用CI4框架,来使您开始使用此框架来开发出众的Web应用程序。1.下载并安装CI4首先,您需要从官方网站(https://codeigniter.com/downloa

ThinkPHP6如何进行表单验证操作?ThinkPHP6如何进行表单验证操作?Jun 12, 2023 am 09:36 AM

ThinkPHP6是一款基于PHP的MVC框架,极大地简化了Web应用程序的开发。其中表单验证是一个非常基础和重要的功能。在这篇文章中,我们将介绍ThinkPHP6中如何进行表单验证操作。一、验证规则定义在ThinkPHP6中,验证规则都需要定义在控制器中,我们可以通过在控制器中定义一个$validate属性来实现规则的定义,如下所示:usethinkVa

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

EditPlus Chinese cracked version

EditPlus Chinese cracked version

Small size, syntax highlighting, does not support code prompt function

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

Atom editor mac version download

Atom editor mac version download

The most popular open source editor