PHP 画像アップロード エラー: 許可がありません
この投稿は、wxg694175346 によって 2013-02-03 00:32:23 によって最終編集されました。
PHP を使用してファイルをアップロードする小さなケース:
<?php<br />
if ((($_FILES["file"]["type"] == "image/gif")<br />
|| ($_FILES["file"]["type"] == "image/jpeg")<br />
|| ($_FILES["file"]["type"] == "image/pjpeg"))<br />
&& ($_FILES["file"]["size"] < 20000))<br />
{<br />
if ($_FILES["file"]["error"] > 0)<br />
{<br />
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";<br />
}<br />
else<br />
{<br />
echo "Upload: " . $_FILES["file"]["name"] . "<br />";<br />
echo "Type: " . $_FILES["file"]["type"] . "<br />";<br />
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";<br />
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";<br />
<br />
if (file_exists("upload/" . $_FILES["file"]["name"]))<br />
{<br />
echo $_FILES["file"]["name"] . " already exists. ";<br />
}<br />
else<br />
{<br />
move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" . $_FILES["file"]["name"]);<br />
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];<br />
}<br />
}<br />
}<br />
else<br />
{<br />
echo "Invalid file";<br />
}<br />
?>
ログイン後にコピー
反応は次のとおりです:
警告: move_uploaded_file(upload/12.jpg) [function.move-uploaded-file]: ストリームを開けませんでした: 24 行目で許可が拒否されました inupload_file.php
警告: move_uploaded_file() [function.move-uploaded-file]: '/saetmp/928/xququer/1359821561_2429732845/phppSXyZ6' を 'upload/12.jpg' inupload_file.php (24 行目) に移動できません
Googleで検索してみると、どうやら許可がないようです。 。 。 Linux では chmod 777 ファイル名メソッドを使用できますが、Windows ではどうすればよいでしょうか?右クリックしてアップロード フォルダーの読み取り専用オプションを削除した後、ウィンドウを閉じて、属性がまだ読み取り専用であるかどうかを確認します。
何をするか。 。 (ローカルに構築された Apache ではなく、SAE、Sina Cloud Server を使用しています)
-----解決策--------------------------------Windows の下を右クリック -> プロパティ -> セキュリティ -> 編集 -> すべてのユーザーを追加 -> 以下の必要な権限にチェックを入れます
------解決策--- ------------ -----upload_tmp_dir を設定しましたか?
設定しない場合、オペレーティング システムの一時ディレクトリが使用されます。XP 以降のオペレーティング システム (XP を除く) では、このディレクトリは匿名ユーザー
に公開されません。