0

ユーザーがtxt、doc、またはpdf形式のファイルをアップロードできるようにしたい。私はそれのために次のコードを書きました。

if ((($_FILES["uploaded"]["type"] == "text/plain")
        || ($_FILES["uploaded"]["type"] == "application/pdf")
        || ($_FILES["uploaded"]["type"] == "application/doc"))
        && ($_FILES["uploaded"]["size"] < 50000))
{
    if ($_FILES["uploaded"]["error"] > 0)
    {
        echo "Error: " . $_FILES["uploaded"]["error"] . "<br />";
    }
    else
    {
        $target = "upload/";
        $target = $target . basename($_FILES['uploaded']['name']);
        $ok = 1;
        if (move_uploaded_file($_FILES['uploaded']['tmp_name'], $target))
        {
            echo "The file " . basename($_FILES['uploadedfile']['name']) . " has been uploaded";
        }
        else
        {
            echo "Sorry, there was a problem uploading your file.";
        }
    }
}
else
{
    echo "Invalid file";
}

しかし、このコードは機能していません。いずれにせよ、常に無効なファイルが表示されます。何が問題なのでしょう?

4

1 に答える 1

0

問題はMIMEタイプにありました。@ ksg91で述べられているように、docファイルの正しいMIMEタイプはapplication / mswordであり、docxファイルの場合はapplication/vnd.openxmlformats-officedocument.wordprocessingml.documentです。

于 2012-06-27T11:18:32.170 に答える