更新图像将无法正常工作

时间:2017-03-16 10:37:16

标签: php laravel laravel-4

我正在尝试用图片更新一些数据。其他数据已更新,但图像仍未更新。这是我的代码

路线

Route::get('film/{idFilm}/edit', array('as' => 'film.edit', 'uses' => 'FilmController@edit'));

Route::post('film/{idFilm}/update', array('as' => 'film.update', 'uses' => 'FilmController@update'));

控制器

public function edit($idFilm)
{
    $film = Film::findOrFail($idFilm);
    $genre = Genre::lists('namaGenre', 'idGenre');
    if (is_null($film))
    {
        return Redirect::to('film');
    }
    return View::make('pengelolaan.film.editfilm', compact('film','genre'));
}


/**
 * Update the specified resource in storage.
 *
 * @param  int  $id
 * @return Response
 */
public function update($idFilm)
{
    $rules = array(
    'judulFilm' => 'required',
    'durasi' => 'required|numeric',
    'keterangan' => 'required',
    'idGenre' => 'required'
    );

    $validation = Validator::make(Input::all(), $rules);
     if ($validation->fails()) 
     {   
        return Redirect::to('film/' . $idFilm . '/edit')
        ->withErrors($validation)
        ->withInput()
        ->with('message', 'There were validation errors.');
      } 
      else 
      {
            $films = Film::find($idFilm);
            $films->judulFilm=Input::get('judulFilm');
            $films->durasi=Input::get('durasi');
            $films->keterangan= Input::get('keterangan');
            $films->idGenre= Input::get('idGenre');
            if(Input::hasFile('foto'))
            {
                $file=Input::file('foto');
                $file->move('img',$file->getClientOriginalName());
                $filename=$file->getClientOriginalName();
                $films->foto = $filename;
                $films->save();
            }
            else
            {
                $films->save();
            }

            Session::flash('message', 'Data Berhasil Diubah');
            return Redirect::to('film');
      }
}

视图

 {{Form::model($film, array('route'=>array('film.update', $film->idFilm,'files' => TRUE)))}}
             <div class="form-group">
                <div class="col-lg-6">
                    {{ Form::label('judulFilm', 'Judul Film') }}
                    {{ Form::text('judulFilm', Input::old('judulFilm'), array('class' => 'form-control')) }}
                </div>
            </div>
            <div class="form-group">
                <div class="col-lg-6">
                    {{ Form::label('durasi', 'Durasi Film') }}
                    {{ Form::text('durasi', Input::old('durasi'), array('class' => 'form-control')) }}
                </div>
            </div>
            <div class="form-group">
                <div class="col-lg-6">
                    {{ Form::label('keterangan', 'Sinopsis Film') }}
                    {{ Form::textarea('keterangan', Input::old('keterangan'), array('class' => 'form-control')) }}
                </div>
            </div>
            <div class="form-group">
                <div class="col-lg-6">
                    {{ Form::label('idGenre', 'Genre') }}
                    {{ Form::select('idGenre', $genre,'',array('class'=>'form-control')) }}
                </div>
            </div>
            <div class="form-group">
                <div class="col-lg-6">
                    {{ Form::label('foto', 'Poster') }}
                    {{ Form::file('foto') }}
                </div>
            </div>
            </br>
            <div class="form-group">
                <div class="col-lg-6">
                    <a class="btn btn-default " href="{{ url('film') }}">Batal</a>
                    {{Form::submit('Simpan', array('type'=>'submit', 'class'=>'btn btn-default'))}}
            {{Form::close()}}

没有错误,所以我不知道它有什么问题。 有人可以告诉我有什么问题吗?提前致谢

1 个答案:

答案 0 :(得分:0)

面对这个问题的可能性很小:

  1. 检查是否有enctype="multipart/form-data"属性

  2. 检查文件大小。如果您的文件太大,请增加upload_max_filesize

  3. 可能是您的tmp文件夹的权限。为您的tem文件夹提供权限。 ini_get('upload_tmp_dir');