laravel基础课程---14、表单验证(lavarel如何进行表单验证)
laravel基础课程---14、表单验证(lavarel如何进行表单验证)
一、总结
一句话总结:
lavarel的验证的功能比tp要【简单】且【强大】很多
直接控制器中:添加【规则数组】和【修改提示信息数组】,然后调用【验证类】进行验证即可:$validator = \Validator::make($input,$rules,$message);
表单验证 1、控制器
// 规则 $rules=[
'name'=>'required|unique:user|between:6,12',
"pass"=>'required|between:6,12|same:repass',
]; // 所有数据 $input=$request->all(); // 修改提示信息 $message=array( "name.required"=>"请输入用户名",
"name.unique"=>"用户名以存在",
"name.between"=>"长度不满足",
"pass.required"=>"请输入密码",
"pass.between"=>"密码长度不满足",
"pass.sname"=>"两次不一致",
); // 设置表单验证的参数
// 参数一 需要验证的数据
// 参数二 验证规则
// 参数三 提示信息
$validator = \Validator::make($input,$rules,$message); // 进行验证 if($validator->passes()){
// 处理数据
unset($_POST['_token']);
unset($_POST['repass']); $_POST['pass']=\Crypt::encrypt( $_POST['pass']);
$_POST['time']=time();
if (\DB::table("user")->insert($_POST)) {
# code...
return redirect("admin/user");
}else{
return back();
} }else{
return back()->withInput()->withErrors($validator);
} 2、页面中提示错误 @if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
1、lavarel如何加密解密字符串?
Crypt对象的encrypt方法:echo $pass=\Crypt::encrypt('123');
Crypt对象的decrypt方法:echo \Crypt::decrypt('MjM1OCJ9');
你可以借助 Crypt facade 来加密一个值。这些值都会使用 OpenSSL 与 AES-256-CBC 来进行加密。此外,所有加密过后的值都会被签署文件消息验证码 (MAC),以检测加密字符串是否被篡改过。
2、Crypt::encrypt($pass)和md5加密的区别?
Crypt([krɪpt]:n. 土窖,地下室)::encrypt($pass):每次都是变化的,长度180-192之间,并且可逆
md5:不变的,并且可能被暴力破解
你可以借助 Crypt facade 来加密一个值。这些值都会使用 OpenSSL 与 AES-256-CBC 来进行加密。此外,所有加密过后的值都会被签署文件消息验证码 (MAC),以检测加密字符串是否被篡改过。
crypt
- n. 土窖,地下室;腺窝
3、lavarel中 判断表单用户名存在不存在是不是用的ajax?
其实不必:闪存 + with()方法即可
with方法向页面返回一个变量,这个变量的值就是 "用户不存在"
4、判断表单(比如判断提交的用户名是否存在),有没有必要弹出框提示?
没必要,直接在页面的 div class="alert alert-danger" 标签中显示即可
<!-- /resources/views/post/create.blade.php --> <h1>创建文章</h1> @if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif <!-- 创建文章的表单 -->
二、内容在总结中
laravel基础课程---14、表单验证(lavarel如何进行表单验证)的更多相关文章
- laravel基础课程---9、视图(lavarel的模板语法和tp相比怎样)
laravel基础课程---9.视图(lavarel的模板语法和tp相比怎样) 一.总结 一句话总结: lavarel的模板语法比thinkphp好用很多:和html代码配合的更好 lavarel比t ...
- laravel基础课程---15、分页及验证码(lavarel分页效果如何实现)
laravel基础课程---15.分页及验证码(lavarel分页效果如何实现) 一.总结 一句话总结: 数据库的paginate方法:$data=\DB::table("user" ...
- laravel基础课程---13、数据库基本操作2(lavarel数据库操作和tp对比)
laravel基础课程---13.数据库基本操作2(lavarel数据库操作和tp对比) 一.总结 一句话总结: 非常非常接近:也是分为两大类,原生SQL 和 数据库链式操作 学习方法:使用时 多看手 ...
- laravel基础课程---12、lavarel的ajax操作2(lavarel的ajax使用总结)
laravel基础课程---12.lavarel的ajax操作2(lavarel的ajax使用总结) 一.总结 一句话总结: 比较简单:就是js请求ajax,然后控制器获取请求参数,返回数据即可 1. ...
- laravel基础课程---11、lavarel的ajax操作(ajax优劣势是什么)
laravel基础课程---11.lavarel的ajax操作(ajax优劣势是什么) 一.总结 一句话总结: 优势:用户友好度:异步通信,不会频繁刷新页面,用户友好度比较高 优势:减轻数据库压力 缺 ...
- laravel基础课程---10、数据库基本操作(如何使用数据库)
laravel基础课程---10.数据库基本操作(如何使用数据库) 一.总结 一句话总结: 1.链接数据库:.env环境配置里面 2.执行数据库操作:DB::table('users')->up ...
- laravel基础课程---7、文件处理、闪存、cookie(cookie原理和使用场景)
laravel基础课程---7.文件处理.闪存.cookie(cookie原理和使用场景) 一.总结 一句话总结: 页面请求服务器的时候是把这个页面中所有的cookie都带上了的,cookie里面也存 ...
- laravel基础课程---3、路由(Laravel中的常见路由有哪几种)
laravel基础课程---3.路由(Laravel中的常见路由有哪几种) 一.总结 一句话总结: 6种:post,get,put,patch,delete,options Route::get($u ...
- laravel基础课程---16、数据迁移(数据库迁移是什么)
laravel基础课程---16.数据迁移(数据库迁移是什么) 一.总结 一句话总结: 是什么:数据库迁移就像是[数据库的版本控制],可以让你的团队轻松修改并共享应用程序的数据库结构. 使用场景:解决 ...
随机推荐
- POJ 2001 Shortest Prefixes 【 trie树(别名字典树)】
Shortest Prefixes Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 15574 Accepted: 671 ...
- HTML5 Support In Visual Studio 2010
最近HTML5浪潮已经开始了,VS2010已经有一个扩展支持在HTML5智能提示.你可以从这里下载这个扩展: http://visualstudiogallery.msdn.microsoft.com ...
- Ant Problem: failed to create task or type foreach 问题
用eclipse导出android时总是会出现有类没有导出的现象,感觉非常麻烦,就用ant些了脚本.在eclipse中运行脚本没问题.可是在命令行下运行会出现 Problem: failed to c ...
- Android 自己定义ImageView实现圆角/圆形 附加OnTouchListener具体凝视以及Button圆角
转载请注明出处:王亟亟的大牛之路 平时要用一些非方方正正的button之类的小伙伴们是怎样实现的?RadioButton? ImageButton? 还是其它? 今天亟亟上的是ImageView来实现 ...
- 微服务之旅:从Netflix OSS到 Istio Service Mesh
在这篇文章中,我们从Netflix开始,通过Envoy和Istio的崛起,快速浏览微服务的历史. 微服务是具有边界上下文的松散耦合服务,使您能够独立开发,部署和扩展服务.它还可以定义为构建独立开发和部 ...
- HTML5 2D平台游戏开发#4状态机
在实现了<HTML5 2D平台游戏开发——角色动作篇之冲刺>之后,我发现随着角色动作的增加,代码中的逻辑判断越来越多,铺天盖地的if() else()语句实在让我捉襟见肘: 这还仅仅是角色 ...
- openssl源码安装
下载最新的OpenSSL http://openssl.org/source/ ./config make make install 通过命令openssl version或者openssl ...
- html 锚点定位
在html中设置锚点定位我知道的有几种方法.在此和大家分享一下: 1.使用id定位: <a href="#1F" name="1F">锚点1< ...
- Java&Xml教程(十)XML作为属性文件使用
我们一般会将Java应用的配置參数保存在属性文件里.Java应用的属性文件能够是一个正常的基于key-value对,以properties为扩展名的文件.也能够是XML文件. 在本案例中.將会向大家介 ...
- 短信计时器Utils
package com.lvshandian.partylive.utils; import android.content.Context;import android.os.CountDownTi ...