2012-08-08 2 views
0

저는 Laravel PHP 프레임 워크를 사용하고 있고 2 개의 업로드 필드가있는 양식이 있습니다. 분야는 정상적으로 작동하고 아무 문제도 없다. .php 코드는 다음과 같습니다.if else statements

추신. 중괄호에 익숙하지 않은 사용자의 경우 블레이드 템플릿 엔진에서 기본적으로 <?php echo .... ?>입니다.

코드 형태가 난 내 업로드 디렉토리 내용 (파일)을 통과 제출 후

{{ Form::label('upload_files', 'Lataa bändin LAVAKARTTA, esim .jpg (tiedosto  pakollinen)'); }} 
{{ Form::file('upload_files', '', array('class' => 'form-field', 'form-text')); }} 

{{ Form::label('upload_files_raider', 'Lataa bändin tekninen RAIDERI esim .txt (tiedosto pakollinen)'); }} 
{{ Form::file('upload_files_raider', '', array('class' => 'form-field', 'form-text')); }} 

. 내 컨트롤러에서

나는이 코드를 가지고 :

$a = $formsubmit['esiintyva_artisti']; 

// if no file dont upload 
// $a is used to give the filename a ending that correspons to a user 

if($_FILES['image']['error'] == 0){ 
//if(!isset($_FILES)){ 
    Input::upload('upload_files', 'public/uploads', $a . '-artistin-tai-bandin-lavakartta.jpg'); 
}; 

if($_FILES['image']['error'] == 0){ 
//if(!isset($_FILES)){ 
    Input::upload('upload_files_raider', 'public/uploads', $a . '-artistin-tai-bandin-raideri.txt'); 
}; 

을 Heres 문제 :

Fatal error: Call to a member function move() on a non-object in /var/www/...../laravel/input.php on line 230 

감사에서 : 모든 파일을 업로드없이 내가 양식을 제출하면

오류가 발생합니다 사전 커뮤니티! 당신이 당신의 형태로 upload_files_raider upload_files을 사용하기 때문에

답변

1

이 오류는 아마의 $ _FILES [ '이미지']가 설정되어 있지 않은 배열을 확인 당신에게서오고있다. ('upload_files') 입력 :: 파일을 사용하여 업로드 파일을 확인하십시오 :

if(!is_null(Input::file('upload_files'))) { 
    Input::upload('upload_files', 'public/uploads', $a . '-artistin-tai-bandin-lavakartta.jpg'); 
} 

if(!is_null(Input::file('upload_files_raider'))) { 
    Input::upload('upload_files_raider', 'public/uploads', $a . '-artistin-tai-bandin-raideri.txt'); 
} 
0

문제는 쉽게, 단지 NULL를 확인하여 해결되었다 같은 진술 경우 :

 if ($file_upload == NULL) 
    { 
     return View::make('site.form')->with('message', 'Choose the file to be uploaded!'); 
    } 
    else 
    { 
     Input::upload('file_upload', 'public/uploads', $date.' '.$upload_file_name); 
    }