2016-06-09 7 views
0

보기를 업로드 :Laravel 5 파일 및 이미지

<input type="file" name="photo"> 
<button class="btn">Send</button> 
<input type="submit" value="send"> // I tested by input and button but it also does not work 

컨트롤러 :

$f = $request->file("photo"); 
if($f->isValid()){ 
    echo "upload" 
    $f->move("/public/upload/file.png"); 
}else{ 
    echo 'not upload'; 
} 

오류 :하지만 난에 업로드 할 이미지를 할 수없는 이유

Fatal error: Call to a member function isValid() on null 

나도 몰라 대지. 나는 여러 가지 방법을 시도했지만 아무런 효과가 없습니다. 요청으로 파일을 보내고 오류가 발생하면 Request :: file ('photo') 또는 Input :: file ('photo') -> isValid()를 사용하려고했지만 너무 효과가 없습니다.

var_dump($request->file('prod_photo')); 

는 응답과 같은 코드를 사용할 경우는 NULL

편집을 가져옵니다

가 어떻게 이미지 크기를 변경하고 파일이 분명 사진인지 확인 할 수

$f = $request->file('photo'); 
if ($f->isValid()) { 
      $ext = $f->getClientOriginalExtension(); 
      $org_name = $f->getClientOriginalName(); 
      $r = rand(11111,999999); 
$f->move("public/uploads", $r.$org_name); 
    // 
} 
?

답변

2

양식에 enctype="multipart/form-data" 추가

편집 :

당신은 쉽게과 같이, 검증과를 확인할 수 있습니다

$this->validate($request, [ 
    'photo' => 'required|image' //works for jpeg, png, bmp, gif, or svg 
]); 

는 Unfortunely u는 네이티브 PHP로 이미지 크기를 변경하지 못할 (로 나), 당신은 ImageMagick, GD 또는 Glide (이전 하나 필요) 중 하나를 사용해야합니다

+0

이미지 크기를 변경하고 파일이 확실하게 사진인지 확인하려면 어떻게해야합니까? 질문을 변경하고 코드를 추가했는데 확인할 수 있습니까? – bradley546994