전화

2015-01-25 5 views
1

나는 이미지 업 로더를 만들기 위해 노력하고 있지만, 항상 이외의 개체에 대한 오류를 나에게 멤버 함수 getClientOriginalName()에전화

전화를 해 여기 여기 내 코드 컨트롤러 코드

public function postSubtitle() 
{ 
    //$video = Video::where('user_id', '=', Auth::id())->find(Input::all('id')); 

    var_dump(Input::all()); 
    $file= Input::file('name'); 
    echo $file->getClientOriginalExtension(); 
} 

이며, 내 코드와 뭐가 잘못 업로드 양식

{{ form_open({'url': 'video/subtitle', 'files': 'true'}) }} 

        {{ form_file('name', {class: 'form-control'}) }} 
        {{ form_submit(trans('main.edit'), {class: 'btn btn-lg btn-success btn-block'}) }} 
        {{form_close()}} 

입니까?

+0

'form'에'enctype = "multipart/form-data"'가 있습니까? – Marwelln

+0

생성 된 HTML 양식을 보여주십시오. – Marwelln

+0

\t \t \t – Jensej

답변

-1

새 '$ file'개체를 만들고 'getClientOriginalExtension();'을 호출하십시오.

+0

예제를 보여줄 수 있습니까? – Jensej

+0

$ file = new postSubtitle(); $ file = 입력 :: 파일 ('이름'); echo $ file-> getClientOriginalExtension(); – subramanyemm

+0

'postSubtitle'클래스가 없습니다. – Jensej

3

파일 업로드를 처리하려면 formenctype="multipart/form-data"이 있어야합니다. 는 (당신은있을 수 있습니다,하지만 어떻게 함수 form_open 작품을 우리는 알지 못한다.)

을 당신이이 여전히 당신이 어떤 파일을 선택하지 않은 것을 의미한다 동일한 오류가 발생하는 경우. 파일을 업로드하지 않으면 Input::file('name')은 객체 대신 null이됩니다.

그래서 null이 아닌지 먼저 확인한 다음 파일을 계속 처리해야합니다.

$file = Input::file('name'); 
if ($file !== null) { 
    echo $file->getClientOriginalExtension(); 
} 
+0

var_dump가 NULL을 반환했습니다. 네, enctype 있습니다. – Jensej