一、控制器如下

引用use app\index\model\User;

//注意模型类名不能和控制器类名相同

public function index()
{
return $this->fetch('index');//显示模版
} public function add()//添加数据
{
$user=new User;
  //allowField过滤无用的字符串
  //validata开启字段验证机制
  //input("post.")表示传送过来的全部参数
    if($user->allowField(true)->validate(true)->save(input("post.")))
{
return '添加成功';
}else{
return $user->getError();
} }

二、模型内容如下

namespace app\index\model;
use think\Model;
//没有处理任何东西,可以选加载一些要用的如自动完成
class User extends Model
{ }

三模版内容

//{:url('index/users/add')}当前控制器提交地址

//{$Request.token}随机TOKEN需要引用REQUEST

<h2>创建用户</h2>
<form method="post" action="{:url('index/users/add')}">
用户:<input type="text" name="username"/><br/>
密码:<input type="password" name="password"/><br/>
邮箱:<input type="mail" name="mail"/><br/>
<input type="hidden" name="__token__" value="{$Request.token}">
<input type="submit" value="提交"/> </form>

四、验证层

1、在application新建validate文件目录

2、新建类文件user.php  注意与表名相同。与模型类名也是相同的内容如下:

namespace app\index\validate;
use think\Validate;
class User extends Validate
{
//验证规则变量必须是rule,更多验证规则请参考手册
    protected $rule=[
['username','require|min:4','用户名必须|用户名不能少于4位'],
['mail','email','邮箱格式不正确'],
['password','require','密码必须']
]; }

tp表单的提交与验证的更多相关文章

  1. form表单ajaxSubmit提交并验证

    html: <form class="register-form" action="{:U('')}" method="post"&g ...

  2. HTML表单 在提交之前 验证表单数字合法性

    function checkform(){ if(!isNumeric($('.apply_money').val())){ alert("必须是数字"); return fals ...

  3. 无法在提交表单前通过ajax验证解决办法

    博主在一个小项目中,要实现注册表单无刷新验证用户名或密码,但是发现不管怎么样都无法在先通过ajax验证之前不提交表单. 例如:一个简单的验证函数 function check(){ $.post(&q ...

  4. Ajax实现提交表单时验证码自动验证(原创自Zjmainstay)

    本文通过源码展示如何实现表单提交前,验证码先检测正确性,不正确则不提交表单,更新验证码. 1.前端代码 index.html <!DOCTYPE html> <html> &l ...

  5. php通过token验证表单重复提交

    PHP防止重复提交表单 2016-11-08 轻松学PHP 我们提交表单的时候,不能忽视的一个限制是防止用户重复提交表单,因为有可能用户连续点击了提交按钮或者是攻击者恶意提交数据,那么我们在提交数据后 ...

  6. ASP.NET MVC 客户端验证失败后表单仍然提交问题

    客户端验证失败后表单仍然提交问题!导致页面刷新,辛辛苦苦输入的内容荡然无存. 多么奇怪的问题.按道理,验证失败,就应该显示各种错误信息,不会提交表单才对.而现在,错误信息正常显示,但页面却刷新了一遍. ...

  7. js阻止form表单重复提交

    防止表单重复提交的方法总体来说有两种,一种是在js中阻止重复提交:另一种是在后台利用token令牌实现,大致思路是生成一个随机码放到session和form表单的隐藏输入框中,提交表单时两者对比,表单 ...

  8. form表单action提交表单,页面不跳转且表单数据含文件的处理方法

    在最近的项目中需要将含 input[type='file']的表单提交给后台 ,并且后台需要将文件存储在数据库中.之前所用的方法都是先将文件上传到七牛服务器上,然后七牛会返回文件的下载地址,在提交表单 ...

  9. PHP生成token防止表单重复提交

    .提交按钮置disabled 当用户提交后,立即把按钮置为不可用状态.这种用js来实现. 提交前代码如下: $()  {  $exec="insert into student (user_ ...

随机推荐

  1. IIS6.0支持PHP设置

    找到了一份兼职,做网站的,但是公司里面服务器是用的IIS,Win2003系统,而且以前的网站都是aspx的.老板是我们学校的一个老师,我是被学长推荐过去了. --------------------- ...

  2. 高人对libsvm的经典总结(全面至极)

    ==>转自:http://blog.163.com/crazyzcs@126/blog/static/129742050201061192243911/ http://www.ilovematl ...

  3. iOS-数据库sqlite的使用

    .数据库的增删查改的方法 sqlite3_exec(db, [sql UTF8String], NULL, NULL, &erro); 数据库的使用 步骤:01.导入框架<sqlite3 ...

  4. jquery文字填写自动高度

    下面开始写一个jquery插件 (function($){ $.fn.autoTextarea = function(options) { var defaults={ maxHeight:null, ...

  5. HttpContext.Current.Cache 和 HttpRuntime.Cache

    HttpRuntime.Cache:用于winfrom 和 web HttpContext.Current.Cache 用于web .NET中Cache有两种调用方式:HttpContext.Curr ...

  6. uni-app 如何开启sass\less处理

    开启方式:工具->插件安装->安装完成,启用即可

  7. 微信小程序 - 使用npm(第三方包)

    使用示例: 1. 开启“使用npm模块” 2. 新建 node_modules 文件夹 3. cd到新建 node_modules 所在的目录(非node_modules文件夹内) npm insta ...

  8. [转]查看linux服务器硬盘IO读写负载

    最近一台linux服务器出现异常,系统反映很慢,相应的应用程序也无法反映,而且还出现死机的情况,经过几天的观察了解,发现服务器压力很大,主要的压力来自硬盘的IO访问已经达到100% 为了方便各位和自己 ...

  9. 检查用户输入信息是否完整(vb.net实现)

        机房收费系统中.在将用户输入的信息封装到实体中作为參数传到B层之前,总要对用户输入的信息进行检查.我将这种检查分为两类: 合法性检查 完整性检查     所谓合法性检查,就是用户输入的信息是否 ...

  10. 〖Android〗/system/etc/event-log-tags

    一博客中,一段的注释的解释:[From: http://blog.csdn.net/hustpzb/article/details/8525324] /** * Access to the syste ...