2012-02-02 2 views
0

확인 - 크기 제한, 그래서 나는이 만든이 잘 잘 작동하고 :PHP 업로드 파일 유형 및

$file_name = $HTTP_POST_FILES['ufile1']['name']; 
$file_name_for_db = ($HTTP_POST_FILES['ufile1']['name']); 
$new_file_name = $id."_pic1_".$file_name; 
$path = "../users/".$username_session."/photos/".$new_file_name; 

if($ufile !=none) 
{ 
    copy($HTTP_POST_FILES['ufile1']['tmp_name'], $path); 
    $path_of_pic = "../users/".$username_session."/photos/".$id."_pic1_".$file_name_for_db; 
    mysql_query("UPDATE pictures SET pic_1 = '".$path_of_pic."' WHERE id = '$id'"); 
    header("location:../upload/"); 
} 
else 
{ 
    echo "Error"; 
} 

것은 이제 어떻게 내가 할 노력했습니다 것은 제한을 추가 할 수 있습니다.

많은 제한 자습서를 살펴 보았지만 작동하지 않으며 항상 상관없이 오류를 반환합니다. 난 그냥 사진 이외의 다른 (.PNG, .JPG, .JPEG, .gif 참고, .BMP) 및 업로드 사용자의 restric 할

보다는 더 이상하지 5메가바이트

나는 HTML에서이 작업을 수행하지만, 수

쉽게 지나칠 수 있습니다. 나는 프로그래밍에 익숙하지 않기 때문에 코드를 작성하는 방식이 불량하고 부피가 크다면 사과드립니다.

이 사이트는 나를 한꺼번에 몇 번 도왔습니다! 당신들은 멋진데! 미리 감사드립니다.

답변

0
if([email protected](file_get_contents($path))) { 
    // (most likely) not an image 
} 

그리고 :

if(filesize($path) > 5<<20) { 
    // image is bigger than 5MB 
} 
+0

if (! @imagecreatefromstring (file_get_contents ($ path))) { // (가장 가능성이 높음) 이미지가 없습니다. 에코 오류 이미지가 아닙니다. } else { 업로드 이미지 } 이 방법이 효과가 있습니까? – user1053263

+0

기본적으로 그렇습니다. –