[转]Laravel 4之表单
创建表单
除了原有的方式创建表单,Laravel提供了一种便捷的方式
<!-- app/views/form.blade.php -->Form::open(array('url' => 'our/target/route'))Form::close()
编译后HTML为
<formmethod="POST"action="http://demo.dev/our/target/route"accept-charset="UTF-8"><inputname="_token"type="hidden"value="83KCsmJF1Z2LMZfhb17ihvt9ks5NEcAwFoRFTq6u"></form>
自定义提交方法
Form::open(array('url'=>'our/target/route','method'=>'GET','accept-charset'=>'ISO-8859-1'))Form::close()
在表单中需要上传文件
Form::open(array('url'=>'our/target/route','files'=>true))Form::close()
在表单中指向路由别名或控制器
Form::open(array('route'=>'my_route'))orm::open(array('action'=>'MyController@myAction'))
表单标签
Lable标签
Form::label('first_name','First Name')//<label for="first_name">First Name</label>Form::label('first_name','First Name', array('id'=>'first_name'))//<label for="first_name" id="first_name">First Name</label>
文本域标签
Form::text('first_name','Taylor Otwell')//<input name="first_name" type="text" value="Taylor Otwell">orm::textarea('description','Best field ever!')//<textarea name="description" cols="50" rows="10">Best field ever!</textarea>Form::password('secret')//<input name="secret" type="password" value="">Form::email('email','me@email.com')//<input name="email" type="email" value="me@email.com">Form::hidden('panda','luishi')//<input name="panda" type="hidden" value="luishi">
多选框标签
Form::checkbox('pandas_are_cute','1',true)//<input checked="checked" name="pandas_are_cute" type="checkbox" value="1">
单选框标签
Form::radio('panda_colour','red',true)//<input checked="checked" name="panda_colour" type="radio" value="red">
下拉菜单
Form::select('panda_colour', array('red'=>'Red','black'=>'Black','white'=>'White'),'red')//<select id="panda_colour" name="panda_colour"><option value="red" selected="selected">Red</option><option value="black">Black</option><option value="white">White</option></select>//菜单分组Form::select('bear', array('Panda'=> array('red'=>'Red','black'=>'Black','white'=>'White'),'Character'=> array('pooh'=>'Pooh','baloo'=>'Baloo')),'black')
文件上传标签
Form::file('avatar')//<input name="avatar" type="file">
按钮标签
Form::submit('Save')//<input type="submit" value="Save">Form::button('Smile')//<button type="button">Smile</button>Form::reset('Clear')<input type="reset" value="Clear">
图片标签
Form::image(asset('my/image.gif','submit'))//<input src="https://demo.dev/my/image.gif" type="image">
自定义宏
定义宏
Form::macro('fullName',function(){return'<p>Full name: <input type="text" name="full_name"></p>';});
使用宏
Form::fullName();
使用参数
Form::macro('fullName',function($name){return'<p>Full name: <input type="text" name="'.$name.'"></p>';});Form::fullName('my_field')
CSRF防御机制
使用Form::open()会自动创建添加CSRF令牌,也可以手动添加CSRF令牌到表单中
<formaction=""method="POST"></form>
使用默认的CSRF过滤器
Route::post('/handle-form', array('before'=>'csrf',function(){// Handle our posted form data.}));
结束
[转]Laravel 4之表单的更多相关文章
- laravel中form表单,ajax传值没反应
laravel中form表单,ajax传值没反应时,可能是令牌有问题. form中添加: {{csrf_token()}} ajax中添加: data: {'page': page, '_token' ...
- php laravel加密 form表单认证 laravel分页
use Illuminate\Support\Facades\Crypt; echo Crypt::encrypt(123); //加密echo "<br>";//解密 ...
- Laravel在进行表单验证时,错误信息未返回
马上要毕业了,找了现在的这家公司,压力不大,自己也比较喜欢,唯一的遗憾就是手机号莫得换了(找不到换的借口). 进入正题: 之前自己的博客(http://lxiaoke.cn)是用ThinkPHP开发的 ...
- laravel中的表单请求类型和CSRF防护(六)
laravel中为我们提供了绑定不同http请求类型的函数. Route::get('/test', function () {}); Route::post('/test', function () ...
- laravel中设置表单的方式,以及获取表单的提交的数据
- Laravel教程 六:表单 Forms
Laravel教程 六:表单 Forms 此文章为原创文章,未经同意,禁止转载. Form laravel 5.2 之后请使用 laravelcollective/html 替换 illuminate ...
- Laravel表单传值
仔细阅读过Laravel官方文档的就不用看啦~ 整理下之前遇到的关于Laravel表单的一些小问题 表单传值无法传过去,因为laravel做了表单的防护 只需要将{{ csrf_field() }}放 ...
- laravel中,提交表单后给出提示例如添加成功,添加失败等等
laravel中的表单插入,我想在表单插入成功后,可以像thinkphp一样可以有一个提示内容,上网Google,他们还是给出的方法就是 return redirect('/')->with(' ...
- Laravel 5系列教程六:表单 Forms
免费视频教程地址https://laravist.com/series/laravel-5-basic 在开始之前,我们把界面先美化一点点先: 首先到https://github.com/JellyB ...
随机推荐
- MVC4 成员资格、 身份验证
SimpleMembership,成员资格提供程序. 通用的提供者和新的 ASP.NET 4.5 Web 窗体和 ASP.NET MVC 4 模板 ASP.NET MVC 4 互联网模板中添加一些新的 ...
- 一张图搞懂 Javascript 中的原型链、prototype、__proto__的关系 转载加自己的总结
1. JavaScript内置对象 所谓的内置对象 指的是:JavaScript本身就自己有的对象 可以直接拿来就用.例如Array String 等等.JavaScript一共有12内置对象 ...
- linux 终止用户会话
第一步使用 tty 命令 查看自己会话id:本例中会话id为1[root@localhost ~]# tty/dev/pts/1[root@localhost ~]# 第二步 使用 w 命令 查看当前 ...
- (转)Java 代码优化过程的实例介绍
简介: 通过笔者经历的一个项目实例,本文介绍了 Java 代码优化的过程,总结了优化 Java 程序的一些最佳实践,分析了进行优化的方法,并解释了性能提升的原因.从多个角度分析导致性能低的原因,并逐个 ...
- tips[Android]
View:2D graphics,SurfaceView:3D graphics. ProgressBar进度渐进动画,可以使用ObjectAnimator实现.动画相关的类: android.vie ...
- Oracle异常的抛出处理
--一异常处理的代码 --sqlcode 异常编号 --sqlerrm 信号字符串 /* 在plsql 块中格式 Declare 变量 Begin 代码块 EXCEPTION when 异常的名称 t ...
- mercurial(Hg) Server 搭建 过程记录
mercurial(Hg) Server 搭建 过程记录 1. 环境说明 只是测试搭建,环境为本机开发环境:win 8.1 + IIS8.5 软件准备: 2. 软件安装 先安装Python2.7, ...
- hdu 1234
Problem Description 每天第一个到机房的人要把门打开,最后一个离开的人要把门关好.现有一堆杂乱的机房签 到.签离记录,请根据记录找出当天开门和关门的人. Input 测试输入的第一行 ...
- C语言中的结构体和C++中的结构体以及C++中类的区别
c++中结构体可以定义一个函数 C中的结构体和C++中结构体的不同之处:在C中的结构体只能自定义数据类型,结构体中不允许有函数,而C++中的结构体可以加入成员函数. C++中的结构体和类的异同: 一. ...
- Qt Creator的配置
说明:一直想入手QT,看了相关的教程也有一段时间了,但苦于安装QT编辑器一直没有成功,今天手痒痒,于是又来捣鼓一阵子,成功了,特记录下来,方便日后查阅: 环境:win7 x64 + QT Creat ...