2014-10-06 119 views
0

我有以下存储上传文件的方法。文件上传不能在laravel中与mamp服务器

public function store() 
    { 
     // 

     $rules = []; 
     $validator = Validator::make(Input::all(), $rules); 

     // if the validator fails, redirect back to the form 
     if ($validator->fails()) { 
      return Redirect::back() 
       ->withErrors($validator) // send back all errors to the login form 
       ->withInput(); 
     } else { 

      $klas = new Klas; 
      $klas ->title = Input::get('title'); 
      if (Input::get('active') === 'yes') { 
       $klas ->active = 1; 
      } else { 
       $klas ->active = 0; 
      } 


      $extension = 'png'; 
      $directory = public_path() . '/uploads/klassen'; 
      $filename = Input::get('title').".{$extension}"; 

      $upload_success = Input::file('image',$directory,$filename); 

      //Upload the file 
      if($upload_success){ 
       $klas->image = $filename; 
       $klas -> save(); 
       $klassen = DB::table('klas')->get(); 

       return View::make('klas.index',compact('klassen')); 
      } 



     } 
    } 

我的'klas'也被成功保存到数据库中,并且使用正确的文件名。但文件没有上传?我已将public , uploads and klassen folder设置为已为所有人阅读。

任何帮助?

回答

1

你必须将文件移动到目标目录:

$file = Input::file('image'); 
$file->move($directory, $filename); 

我不知道,如果走的是第二和第三的说法就像你现在所做的工作。