2012-02-02 1 views
0

を-sizeので、私はこれを作ったし、これはうまくうまくと動作します:PHPのアップロードファイルタイプし、[OK]を制限

$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でこれを行うことはできます簡単にそれを越えることができます。私はプログラミングに慣れていないので、コードを書く方法が貧弱で、かさばるのであれば、お詫びします。

このサイトは数回私を大いに助けてくれました!あなたは素晴らしいです!前もって感謝します。

答えて

2

このリンクは、あなたが、その後も.jpg, .jpeg, and so on最大アップロードサイズを他の画像を制限するのに役立つ、とあなたは画像のサイズを変更したい場合は、その後もチュートリアルに従います:http://www.9lessons.info/2009/03/upload-and-resize-image-with-php.html

+0

今読んで、 – user1053263

+0

@ user1053263あなたの歓迎:) –

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

基本的には、はい。 –