Laravel插入的数据未保存到数据库中

问题描述

嘿,所以我有一个带有图像文件的表单,我想将员工数据保存到数据库中。该表格在模式框中。当我按Submit时,我将在一个空选项卡中定向到我以Json格式输入的数据。我可能做错了什么?我没有任何错误...

控制器

public function insertEmployee(Request $request)
   {
      $users = new User;

      $users->name = $request->input('name');
      $users->email = $request->input('email');
      $users->password = $request->input('password');
      $users->department = $request->input('department');
      $users->salary = $request->input('salary');

      if($request->hasFile('image'))
      {
         $file = $request->file('image');
         $extension = $file->getClientOrginalExtension(); //getting image extension
         $filename = time() . '.' . $extension;
         $file->move('images/',$filename);
         $users->image = $filename;
      } else {
         return $request;
         $users->image = '';
      }

      $users->save();

      return redirect('admin/addEmployee')->with('users',$users);
   }

HTML

 <div class="modal fade" id="modal-default">
        <div class="modal-dialog">
          <div class="modal-content">
            <div class="modal-header">
              <h4 class="modal-title">Add New Employee</h4>
              <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                <span aria-hidden="true">&times;</span>
              </button>
            </div>
            <div class="modal-body">
              <form role="form" action="/insertEmployee" method="POST">
                  {{ csrf_field() }}
                  {{ method_field('POST') }}
                <div class="card-body">
                  <div class="form-group">
                    <label for="exampleInputText">Name</label>
                    <input type="text" class="form-control" id="exampleInputText" name="name" value="">
                  </div>
                  <div class="form-group">
                    <label for="exampleInputPassword">Password</label>
                    <input type="password" class="form-control" id="exampleInputPassword" name="password" value="">
                  </div>
                  <div class="form-group">
                    <label for="exampleInputEmail1">Email</label>
                    <input type="email" name="email" class="form-control" id="exampleInputEmail1" value="">
                  </div>
                  <div class="form-group">
                    <label for="exampleInputText">Salary</label>
                    <input type="text" class="form-control" id="exampleInputText" name="salary" value="">
                  </div>
                  <div class="form-group">
                    <label for="exampleInputText">Department</label>
                    <input type="text" class="form-control" id="exampleInputText" name="department" value="">
                  </div>
                  <div class="form-group">
                    <label for="exampleInputFile">File input</label>
                    <div class="input-group">
                      <div class="custom-file">
                        <input type="file" name="image" class="custom-file-input" id="exampleInputFile">
                        <label class="custom-file-label" for="exampleInputFile">Choose file</label>
                      </div>
                    </div>
                  </div>
                </div>
                </div>
                <div class="modal-footer justify-content-between">
                  <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
                  <button type="submit" class="btn btn-primary">Save changes</button>
                </div>
              </form>
          </div>
          <!-- /.modal-content -->
        </div>
        <!-- /.modal-dialog -->
      </div>
      <!-- /.modal -->

路线

Auth::routes();

Route::get('/home','HomeController@index')->name('home');
Route::get('/logout','HomeController@logout');

Route::get('admin/home','HomeController@adminHome')->name('admin.home')->middleware('is_admin');

Route::get('admin/addEmployee','Admin\DashboardController@addEmployee')->name('admin.addEmployee')->middleware('is_admin');
Route::get('/editEmployee{id}','Admin\DashboardController@editEmployee');
Route::put('/updateEmployee/{id}','Admin\DashboardController@updateEmployee');
Route::delete('/deleteEmployee/{id}','Admin\DashboardController@deleteEmployee');

Route::post('/insertEmployee','Admin\DashboardController@insertEmployee')->name('insertEmployee');

型号

protected $table = 'users';
    protected $fillable = [
        'name','email','password','is_admin','department','salary','image',];

解决方法

从else块中删除return $request;

if($request->hasFile('image'))
      {
         $file = $request->file('image');
         $extension = $file->getClientOrginalExtension(); //getting image extension
         $filename = time() . '.' . $extension;
         $file->move('images/',$filename);
         $users->image = $filename;
      } else {
         $users->image = '';
      }

并在您提交文件时将enctype="multipart/form-data"添加到表单中

  <form role="form" action="/insertEmployee" method="POST" enctype="multipart/form-data">

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...