1

ファイルをアップロードしています。

アップロード中に、0777 のアクセス許可を持つフォルダーを作成し、選択したファイルをその特定のフォルダーにアップロードします。

正しくアップロードされます。

しかし問題は、アップロードされたファイルを削除すると、許可が拒否されたと表示されることです。

何をすべきか??..

私のコードは、

if(isset($_POST['submit']))
{
        mkdir("../games/$gname",0777);
        if($_FILES['fileupload']['name'])
        {
            move_uploaded_file($_FILES["fileupload"]["tmp_name"], "../games/".$gname."/".$_FILES["upload"]["name"]."");
        }
}
4

3 に答える 3

0

これを使用して権限を変更していますが、

if(isset($_POST['submit']))
{
    mkdir("../games/$gname",0777); 

    if($_FILES['fileupload']['name'])
    {
        move_uploaded_file($_FILES["fileupload"]["tmp_name"], "../games/".$gname."/".$_FILES["upload"]["name"]."");
        exec("chmod 777 ../games/".$gname."/.*");
    }
}
于 2012-11-01T07:18:16.980 に答える
0

chmodファイルをアップロードした後に使用するファイルのアクセス許可を追加します

if(isset($_POST['submit']))
{
    mkdir("../games/$gname",0777); 
    //or create directory with recursive permision 
    //mkdir("../games/$gname",0777, true); 
    if($_FILES['fileupload']['name'])
    {
        move_uploaded_file($_FILES["fileupload"]["tmp_name"], "../games/".$gname."/".$_FILES["upload"]["name"]."");
chmod ("../games/".$gname."/".$_FILES["upload"]["name"], 0777);
    }
}
于 2012-11-01T04:52:49.830 に答える
0

0777は誰でも書き込み可能であり、推奨されていないため、セキュリティ対策として0777ではなく0775でフォルダーを作成し、次のコードを試してください。

if(isset($_POST['submit']))
{
        mkdir("../games/$gname",0775);
        if($_FILES['fileupload']['name'])
        {
            move_uploaded_file($_FILES["fileupload"]["tmp_name"], "../games/".$gname."/".$_FILES["upload"]["name"]."");

@chmod("../games/".$gname."/".$_FILES["upload"]["name"], 0775);

        }
}

また、アップロードしたファイルを削除するためのコードを共有することもできます..

于 2012-11-01T16:14:09.477 に答える