Laravel 4 Laravel 4和uploadifile不工作始终获得500(内部服务器错误)

Laravel 4 Laravel 4和uploadifile不工作始终获得500(内部服务器错误),laravel-4,uploadifive,Laravel 4,Uploadifive,我有我的路线: Route::get('/file', array( 'as' => 'files', 'uses' => 'fileController@getFileUpload' )); Route::post('/uploadfile', array( 'as' => 'uploadfile', 'uses' => 'fileController@postfileupload' )); 现在,我在/file路由上设置了uploa

我有我的路线:

Route::get('/file', array(
    'as' => 'files',
    'uses' => 'fileController@getFileUpload'
));

Route::post('/uploadfile', array(
    'as' => 'uploadfile',
    'uses' => 'fileController@postfileupload'
));
现在,我在/file路由上设置了uploadifive,并将post请求发送到/uploadfile

上传文件的代码如下:

    $file = Input::file('file_upload'); 
    $destinationPath = 'files/CDN/'.str_random(8);
    echo $filename = $file->getClientOriginalName();
    $extension =$file->getClientOriginalExtension();  
    $uploadSuccess = Input::file('file')->move($destinationPath, $filename);
但我总是得到500(内部服务器错误)

我查过我的目录CHMOD是0777 当我从/uploadfile和place中删除上述代码时,我正在链接到正确的路径

echo 200;
它返回成功


我也尝试过添加blade表单标签,但uploadifive实际上根本不依赖于表单元素。它使用AJAX发布

当您通过blade Laravel方法看到来自普通文件发布表单的响应的var_dump时,我终于找到了解决方法。您将发现Uploadfile对象是使用文件名创建的(在表单字段中指定)但另一方面,当您通过Uploadifive发送相同的请求时,您会发现它发送了一个数组,其中包含一个名为[FileData]的节点,该节点保存该文件的对象,因此基本上您需要将该对象指针指定给$file变量,如下所示,它将完美工作:

$data               = Input::all(); 
$file               = $data['Filedata']; 
$destinationPath    = public_path().'files/'.str_random(8);
$filename           = $file->getClientOriginalName();
$extension          = $file->getClientOriginalExtension();  
$uploadSuccess      = $file->move($destinationPath, $filename);
if( $uploadSuccess ) {
   return Response::json('success', 200);
} else {
   return Response::json('error', 400);
}

类似于charm:)

我认为您应该在最后一行使用
$file->move()
之所以$file->move()可以代替您的代码工作,是因为您尝试访问文件的两个不同字段名--“file\u upload”和“file”(查看第一行和最后一行)。将第一行更改为您在表单中指定的内容,并使用$file->move($destinationPath,$filename);在最后一行。嗨,我试着用$file替换它,但没有区别。它仍然显示相同的结果:请参见控制台
http://scrumy.co.uk/file
my route:
route::get('/file',array('as'=>'files','uses'=>'fileController@getFileUpload' ));  路由::post('/cdnUpload',数组('as'=>'cdnUpload','uses'=>'fileController@postFileUpload' ));