0

私はスクリプトを持っています:

if(isset($_FILES['image'])){
$errors = array();
$allowed_ext = array('jpg', 'jpeg', 'png', 'gif');
$file_name = $_FILE['image']['name'];
$file_ext = strtolower(end(explode('.', $file_name)));
$file_size = $_FILE['image']['size'];
$file_tmp = $_FILE['image']['tmp_name'];

if(in_array($file_ext, $allowed_ext) === false){
    $errors[] = 'Extension not allowed';
}

if($file_size > 2097152){
    $errors[] = 'file size must be under 2mb';
}

if(empty($errors)){
    if(move_uploaded_file($file_tmp, "../../img/usr/profile/.$file_name")){
        echo 'File uploaded';
    }
}else{
    foreach($errors as $error){
        echo $error, '<br>';
    }
}
}

そして、それは機能していません。特定のディレクトリに画像をアップロードすることになっています。html は次のとおりです。

<form action="" method="POST" enctype="multipart/form-data">
    <input type="file" name="image">
    <input type="submit" name="submit" value="Update Info">
</form>

[送信] をクリックすると、画面の上部に「拡張は許可されていません」というエラーが表示されます。html と php は同じファイルにあります (小さなスニペットを提供しただけです)。ありがとう!

4

1 に答える 1

6

ファイルにアクセスするには、$_FILES変数を使用する必要があります。あなたのコードでは$_FILE、動作しない を時々使用しています;)

于 2012-10-08T03:47:29.270 に答える