后台用戶模塊——用戶列表和添加用戶


1.創建后台用戶資源路由

     //后台用戶模塊相關路由
     Route::resource('user','UserController');

2.創建后台用戶資源控制器

f:\xampp\php\php.exe artisan make:controller Admin/UserController --resource

3.查看所有資源路由對應的控制器方法

f:\xampp\php\php.exe artisan route:list

4.用戶列表和添加用戶的地址鏈接

  //用戶列表
      <a _href="{{ url('admin/user') }}">
          <cite>用戶列表</cite>
      </a>
  //添加用戶
      <a _href="{{ url('admin/user/create') }}">
            <cite>添加用戶</cite>
      </a>

5.編寫用戶列表控制器方法

    // 獲取用戶列表
    public function index()
    {
      return view('admin.user.list');
    }

6.引入用戶列表頁模板

  • 位置:views/admin/user/list.blade.php
  • 修改標題:
    <title>用戶列表頁</title>
  • 引入css和js:
     @include('admin.public.styles')
     @include('admin.public.script')

7.編寫添加用戶控制器方法

      //返回用戶添加頁面
      public function create()
      {
          return view('admin.user.add');
      }

8.在用戶列表頁點擊添加用戶按鈕,添加用戶地址鏈接

  <button class="layui-btn" 
    //x_admin_show()的第一個參數是頁面標題,第二個參數是請求的頁面網址,第三個參數是頁面的寬高
    onclick="x_admin_show('添加用戶','{{url('admin/user/create')}}',600,400)">
    添加
  </button>

9.引入添加用戶頁模板

  • 位置:
    views/admin/user/add.blade.php
  • 引入css和js:
    @include('admin.public.styles')
    @include('admin.public.script')

10.用ajax實現添加用戶的操作

  • ajax事件
  //點擊添加按鈕,觸發x_admin_show的onlick事件
  <button class="layui-btn" 
    //x_admin_show()的第一個參數是頁面標題,第二個參數是請求的頁面網址,第三個參數是頁面的寬高
    onclick="x_admin_show('添加用戶','{{url('admin/user/create')}}',600,400)">
    <i class="layui-icon"></i>
    添加
  </button>
  • 表單請求頭添加csrf-token
      <meta name="csrf-token" content="{{ csrf_token() }}">
  • js代碼
            //監聽提交
            form.on('submit(add)', function(data) {
                //發異步,把數據提交給php
                $.ajax({
      //發送的方式
                    type: 'POST',
      //發送的網址
                    url: '/admin/user',
      //請求的數據類型
                    dataType: 'json',
      //請求頭附帶layui框架的csrf-token
                    headers: {
                        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                    },
                    //data.field為當前容器的全部表單字段,名值對形式:{name: value}
                    data: data.field,
                    success: function(data) {
                        //彈層提示添加成功,並刷新父頁面
                        //console.log(data);
                        if (data.status == 0) {
                            layer.alert(data.message,{icon:6},function(){
         //刷新父頁面
                                parent.location.reload(true);
                            });
                        }else{
                            layer.alert(data.message,{icon:5});
                        }
                    },
                    error: function() {
                        //錯誤信息
                    }
                });
    //阻止網頁submit事件提交
                return false;
            });

11.執行用戶添加操作控制器方法

 //執行用戶添加操作
    public function store(Request $request)
    {
        //1.接收前台表單提交的數據:email、pass、repass
        $input = $request->all();
        //2.進行表單驗證

        //3.添加到數據庫的user表
        $username = $input['email'];
        $pass = Crypt::encrypt($input['pass']);
        $res = User::create(['user_name'=>$username,'user_pass'=>$pass,'email'=>$input['email']]);
        //4.根據添加是否成功,給客戶端返回一個json格式的反饋
        if ($res) {
            $data = [
                'status'=>0,
                'message'=>'添加成功',
            ];
        }else {
            $data = [
                'status'=>1,
                'message'=>'添加失敗',
            ];
        }
        //json_encode($data);laravel默認將$data數組轉換成json數據
        return $data;
    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM