-1

アップロードしたファイルを特定のディレクトリに移動する次のコードがあります。

if (isset($_FILES["image"]["name"])){ 
    if (!is_dir('pf/' . $uid)) {
        mkdir('pf/' . $uid);
        $large_image_location = "pf/" . $uid;
    }else {
        $large_image_location = "pf/" . $uid;
    }

    chmod ($large_image_location, 0777);
    move_uploaded_file("$userfile_tmp", "$large_image_location/$userfile_tmp");    

}

ただし、次のエラーが発生します。

( ! ) Warning: move_uploaded_file(pf/BfyhieniKJGGqTNm/C:\wamp\tmp\phpF08A.tmp) [function.move-uploaded-file]: failed to open stream: Invalid argument in C:\wamp\www\mingle\upload_dp.php on line 26

これを整理する方法についての助けをいただければ幸いです。

4

2 に答える 2

5

これはあなたの悩みの90%です:

 move_uploaded_file("$userfile_tmp", "$large_image_location/$userfile_tmp");

アップロード パスの先頭に移動先パスを使用します。試す:

move_uploaded_file("$userfile_tmp", "$large_image_location/".$_FILES['image']['name']);

その方がうまくいくはずです。

于 2012-06-22T12:09:35.707 に答える
2

エラー自体はかなり明確でpf/BfyhieniKJGGqTNm/C:\wamp\tmp\phpF08A.tmp、有効なファイル名ではありません。

アップロードされたファイルへのフルパスが常に含まれているため、コンテンツ$_FILES[n]['tmp_name']を変更しないでください。$userfile_tmp

于 2012-06-22T12:06:45.163 に答える