ディレクトリを chmod せずに php で画像をアップロードする方法があるかどうか教えてください
ftp_site($conn_id, 'CHMOD 0777, /www/images/thumbs');
[function.move-uploaded-file]: failed to open stream: Permission...
エラーを回避するには?
ありがとう!
ディレクトリを chmod せずに php で画像をアップロードする方法があるかどうか教えてください
ftp_site($conn_id, 'CHMOD 0777, /www/images/thumbs');
[function.move-uploaded-file]: failed to open stream: Permission...
エラーを回避するには?
ありがとう!
絶対。
なぜftp_site()を使用しているのかわかりません。アップロードしたファイルを別のサーバーにFTPで転送しているのですか、それともphpファイルを提供しているのと同じマシンにアップロードするアップロードフォームを作成しようとしているだけですか?
スクリプトを実行しているサーバーへのアップロードに取り組んでいると仮定すると、いくつかのことがあります。Webサーバーを実行しているユーザー(httpd、apache、lighttpdなど)が$uploadPathへの書き込みアクセス権を持っていることを確認してください。これを行うには、chmod 0777を使用できますが、システム上のすべてのユーザーがこのフォルダーに書き込むことができるため、これは安全ではありません。apacheにのみ書き込むことができます。この部分の設定についてサポートが必要な場合は、http: //yaauie.com/meから私に連絡してください。コマンドラインであなたがどれほど快適かわからないので、jibberjabberであなたを圧倒したくありません
引っ掛かっている場所のトラブルシューティングに役立つ可能性のある簡単な手続き型コードを次に示します。アップロードフォームをこのスクリプトに向けてテストします。
<?php
// Set the upload path
$uploadPath = realpath('./images/thumbs/');
// test to see if the upload path is a directory that is writable
if(is_dir($uploadPath) && is_writable($uploadPath)) {
// create the full path for the end result file
$uploadFile = $uploadPath.basename($_FILES['userfile']['name']);
// try to move the uploaded file
if(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadFile)) {
echo 'Sucessfully moved file to "'.$uploadFile.'"';
} else {
echo 'Directory is writable, but we could not move the uploaded file to it.';
}
} else {
echo 'Either "'.$uploadPath.'" is not a directory, or it is not writable.';
}
?>