2

ネットワーク共有フォルダへのファイルのアップロードに問題があります。IEでWindows認証を使用してフォルダーに接続できます。スクリプトは次のとおりです。

$target_path =  '\\\\server\\images\\';
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']); 
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
    echo "The file ".  basename( $_FILES['uploadedfile']['name']). 
    " has been uploaded";
} else{
    echo "There was an error uploading the file, please try again!";
}

実行すると、次のようなエラーメッセージが表示されました。

警告:move_uploaded_file(\ server \ images \ pic_firefox.jpg)[function.move-uploaded-file]:ストリームを開くことができませんでした:6行目のC:\ xxxxxxxxx\uploader.phpでアクセスが拒否されました

これは、Windows認証がこのように機能しないためだと思いました。ユーザー名/パスワードを使用してファイルをアップロードする方法はありますか?どんな考えでもいただければ幸いです。

4

1 に答える 1

1

ブラウザからPHPスクリプトを実行している場合、ユーザーアカウントで実行しているわけではありません。HTTPサーバーがユーザー名として使用するものは何でも実行しています。そのため、フォルダにアクセスできる場合でも、サーバーにはアクセスできない場合があります。最も簡単な修正は、サーバーにそのフォルダーへの書き込み権限を与えることです。

于 2010-02-19T22:32:46.107 に答える