WordPress 3.5.1 で、HTTP 経由でメディアをまったくアップロードできないという問題をデバッグしようとしています。メディア アップローダは単に「HTTP エラー」と言って失敗します。何が起こっているのかを診断するために、私は非常に基本的な PHP ファイル アップローダーを作成 (つまり、w3schools からコピー) して、舞台裏で奇妙なことが起こっているかどうかを確認することにしました。しかし、何らかの理由で$_FILE
、最も基本的な例であっても、構造にはまったく情報が含まれていません。
file.php :
<html>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file"><br>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
アップロード.php:
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br>";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
?>
私が試したすべてのブラウザで、試したすべてのファイルで、これは次のように出力されます。
Upload:
Type:
Size: 0 kB
Stored in:
印刷$_FILES
すると、それが単なる空の配列であることが示されます。
PHP-5
共有ホスティング(lunarpages)で使用していますが、php.ini
ファイルがfile_uploads
オンになっており、試したファイルのサイズはupload_max_filesize
. 私はラップトップを壁に投げつける準備ができているので、助けがあれば数千ドル節約できます.