0

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. 私はラップトップを壁に投げつける準備ができているので、助けがあれば数千ドル節約できます.

4

4 に答える 4

0

共有ホストで同様の問題が発生しました。tmp ディレクトリが設定されていないことが判明したため、何もアップロードされていませんでした。php.ini が正しく設定されていること、アップロード用の tmp ディレクトリが存在すること、および書き込み権限があることをホストに確認してください。

于 2013-07-09T22:14:24.850 に答える
0
<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>

<?php
phpinfo();
?>

</body>
</html>

これは私にとってはうまくいきました.$_FILESは空ではなく、一般的なDebianインストール、PHP 5.2を使用していました。ファイルとディレクトリのパーミッションを 777 に調整してみてください

于 2013-06-13T21:42:34.490 に答える
0
$target="Your Path";
if(move_uploaded_file($_FILES['file']['tmp_name'], $target)) 
{
  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"]; 
} 
else 
{ 
  echo "Unable to move temp file to target.";
} 
于 2013-07-19T05:57:15.163 に答える