0

ファイルを既存のフォルダ にアップロードしたいのです/media/images/avatars/が、次のエラーが表示されます: No such file or directory。私は何を間違っていますか?それが重要な場合、私はUbuntuを使用しています。

これが私のコードです:

if (!empty($_FILES['file']['name']))
{
    $allowedExts = array("jpg", "jpeg", "gif", "png");
    $extension = end(explode(".", $_FILES["file"]["name"]));
    if ((($_FILES["file"]["type"] == "image/gif")
      || ($_FILES["file"]["type"] == "image/jpeg")
      || ($_FILES["file"]["type"] == "image/png")
      || ($_FILES["file"]["type"] == "image/pjpeg"))
      && ($_FILES["file"]["size"] < 64000)
      && in_array($extension, $allowedExts))
    {
        if ($_FILES["file"]["error"] > 0)
        {
            echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
        }
        else
        {
            if (file_exists("/media/images/avatars/" . $_FILES["file"]["name"]))
            {
                echo $_FILES["file"]["name"] . " already exists. ";
            }
            else
            {
                move_uploaded_file($_FILES["file"]["tmp_name"],
                "/media/images/avatars/" . $_FILES["file"]["name"]);
            }
        }
        $ins['avatar'] = $_FILES["file"]["name"];
    }
    else
    {
        echo "Invalid file";
    }
}
4

1 に答える 1

2

/media/images/avatars/ は既存のフォルダーです

私はあなたが間違っていると確信しています。ファイルシステムのルートからの絶対パスを使用してい
ますが、ほとんどの場合、Web サーバーのディレクトリを参照しています。

したがって、適切に構成されたサーバーの変数で見つけることができるドキュメント ルートパスをパスの先頭に追加する必要があります。$_SERVER['DOCUMENT_ROOT']

于 2013-03-15T12:14:54.993 に答える