-
Controller之Response 响应的常见类型 字符串 视图 json 重定向查看全部
-
Laravel中使用session有三种方式 HTTP request类的session()方法 session()辅助函数 Session facade查看全部
-
由于HTTP协议是无状态的,所以session提供一种保存用户数据的方法 laravel 支持了多种session后端驱动,并提供清楚、统一的API。也内置支持如Memcached、Redis和数据库的后端驱动。默认使用 “file”的Session驱动 session的配置文件配置在config/session.php中查看全部
-
Controller Controller之Request Controller之Session Controller之Response Controller之Middlewa查看全部
-
4.显示成功提示(其实就是Session的闪存) 1.修改 return redirect('demo/index');为return redirect('demo/index')->with('success','添加成功'); 2.将先前创建的路由放进一个web的路由组中 3.在 <form class="form-horizontal" method="post" action="">下添加 {{csrf_field()}} 注:csrf_field()生成一个隐藏的input表单,防止csrf攻击 4.在相应模板信息中添加判断语句 例:@if (Session::has('success')) {{--判断session是否存在succes,如果有则提取下列语句--}} <!-- 成功提示框 --> <div class="alert alert-success alert-dismissible" role="alert"> <button type="button" class="close" data-dismiss="alert" aria-label="Close"> <span aria-hidden="true">×</span> </button> <strong>成功!</strong> {{Session::get('success')}}{{--提取success中的信息--}} </div> @endif查看全部
-
(2)通过模型添加 这里不需要action首先要把form标签中的action删掉 因为点击按钮之后是post请求 所以可以在create()中这样写 if ($request->isMethod('POST')) { $data = $request->input('Demo'); if (Demo::create($data)){ return redirect('demo/index'); } else //否则 返回上一级页面 { return redirect()->back(); } } 注意:这里需要在模型中添加批量赋值语句 protected $fillable = ['name','age','sex'];查看全部
-
3.(1)为表单提交的地址写方法,和路由 写方法 例 public function save(Request $request){ //获取request实例 $data = $request->input('Demo');//取数据 $student = new Demo(); //新建模型 $student->name=$data['name']; //将用户输入的数据传给数据库 $student->age=$data['age']; $student->sex=$data['sex']; if ($student->save()) //如果成功 返回首页 { return redirect('demo/index'); } else //否则 返回上一级页面 { return redirect()->back(); } }查看全部
-
新增数据 1.在input标签中添加name属性 例:<input type="text" name="Demo[name]" class="form-control" id="name" placeholder="请输入学生姓名"> 2.表单提交 post提交方式 action是提交到一个页面进行处理 例:<form class="form-horizontal" method="post" action="{{url('demo/save')}}">查看全部
-
分页 将控制器里的get()改为paginate(2);里面的参数是每页显示的条数 然后在视图文件中通过render()函数进行调用 例 {{$students -> render()}} 问题:1.利用render()输出的是html代码 解决方法:将laravel版本替换成5.2的 建议:初学者最好使用的工具跟老师的一样,出问题有可能是工具的问题 2.Call to undefined method 出现这个错误 解决方法:要根据你控制器中定义的变量来输出render() 比如:$students = Demo::paginate(2);//$students是我控制器里定义的返还变量 {{$students -> render()}}//所以要在视图中用的是$students查看全部
-
因为网站的多数页面都有相同的架构 所以在视图(view)下创建一些父模板和父页面 然后为其划分结构主要利用@section() 和 @yield() 来进行划分 再在view文件夹下定义所有页面的文件夹(控制器中调用的视图一般是这个文件夹下的页面文件) 在子页面中引用父模板用@extends() 引用父页面用 @include()查看全部
-
Controller之Middleware (中间件) StudentController.php中的成员方法 public function huodong0() { return '这是一个宣传页面'; } public function huodong1() { return '活动开始了'; } public function huodong2() { return '活动结束了'; } // 中间件 - 编写 [ app/Http/Middleware/hudong.php ] <?php namespace App\Http\Middleware; use Closure; class huodong { public function handle($request, Closure $next) { if(time() < strtotime('2017-01-05')){ return redirect('huodong0'); } $next($request); // 后置操作 // echo $next($request); } } ?> // 中间件 - 注册 [ app/Http/kernel.php ] protected $routeMiddleware = [ 'huodong' => \App\Http\Middleware\huodong::class ]; // 中间件 - 使用 [ app/Http/routes.php ] Route::get('huodong0', 'StudentController@huodong0'); Route::group(['middleware' => 'huodong'], function() { Route::get('huodong1', 'StudentController@huodong1'); Route::get('huodong2', 'StudentController@huodong2'); });查看全部
-
Controller之json及重定向 public function response1() { $arr = [ 'errCode' => 0, 'status' => 'success', 'data' => 'test' ]; // 将数组转化为json格式 // return response()->json($arr); // 方法1: redirect('待重定向的url') // return redirect('session1'); // 方法2: (跳转前添加一条一次性的session数据) // return redirect('session1')->with('msge', '我是一条快闪数据'); // 方法3: // return redirect()->action('StudentController@session1')->with('msge', '我是一条快闪数据'); // 方法4: (路由别名的方式重定向) // return redirect()->route('s'); // 方法5: (返回上一页重定向) return redirect() -> back(); }查看全部
-
Controller之Session 下 // 以数组的形式存储数据 // Session::put(['name'=>'liuzhe', 'age'=>'21', 'sex'=>'m']); // 把数据放到Session的数组中 // Session::push('name2', 'aaa'); // Session::push('name2', 'bbb'); // 取出相关session数据并删除 // $res = Session::pull('sex', 'default'); // 取出session中所有数据 // $res = Session::all(); // 判断session中是否存在某个值 // $res = Session::has('age')?'存在':'不存在'; // 删除session中指定的值 // Session::forget('name'); // 清空session // Session::flush(); // 暂存数据session(访问一次后就自删) // Session::flash('temp', 'test.');查看全部
-
Controller之Session 上 <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Session; class StudentController extends Controller{ public function session1(Request $request) { // 开启session: (中间件 - 路由群组方式) Route::group(['middleware'=>'web'], function() { Route::get('session1', 'StudentController@session1'); Route::get('session2', 'StudentController@session2'); }); // session的三种用法: // 1.HTTP request session() // $request->session()->put('pwd', 'admin888'); // echo $request->session()->get('pwd'); // 2.session() // session()->put('pwd', 'admin123456'); // echo session()->get('pwd'); // 3.session::method() // Session::put('pwd', '123456'); // Session::get(name, [default (String)]) // echo Session::get('pwd2', 'default'); } } ?>查看全部
-
Controller之Request <?php namespace App\Http\Controllers; use Illuminate\Http\Request; class StudentController extends Controller{ public function request1(Request $request) { // $request->input 接受指定参数(name) 如果不存在返回null // echo $request->input('name', 'null'); // $request->has 判断指定参数是否存在 存在返回true 不存在返回false // if($request->has('name')) { // echo $request->input('name'); // }else{ // echo 'name参数为空'; // } // $request->all 返回所有的参数(array类型) // $res = $request->all(); // dd($res); // $request->method 返回访问类型 // echo $request->method(); // $request->isMethod 判断是否为指定请求类型(不区分大小写) 是为true 否则为false // if($request->isMethod('GET')) { // echo 'yes'; // }else{ // echo 'no'; // } // $request->ajax 判断是否为ajax请求 是为true 否则为false // $res = $request->ajax(); // var_dump($res); // $request->is 判断是否为指定路由 // $res = $request->is('User/*'); // var_dump($res); // $request->url 获取当前的url $res = $request->url(); echo $res; } } ?>查看全部
举报
0/150
提交
取消