使用PHP将文件上传到web目录

时间:2012-12-08 22:17:06

标签: php html

我正在尝试从网页上创建一个简单的上传应用程序:localhost / test.html。我收到了这些错误:

  

警告:move_uploaded_file(test / Blue hills.jpg):无法打开流:   在第11行的C:\ wamp \ www \ test.html中没有这样的文件或目录

  

警告:move_uploaded_file():无法移动'C:\ wamp \ tmp \ php376.tmp'   在第11行的C:\ wamp \ www \ test.html中'test / Blue hills.jpg'

这是我的代码

<html>
  <form enctype="multipart/form-data" action="test.html" method="POST">
    Please choose a file: <input name="uploaded" type="file" /><br />
    <input type="submit" value="Upload" />
 </form>
<html>

<?php

$target = "test/";
$target = $target . basename( $_FILES['uploaded']['name']) ;
$ok=1;

if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target)) {
  echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded";
} else {
  echo "Uploading Error.";
}

3 个答案:

答案 0 :(得分:2)

目录test可能不存在。将这些行添加到您的代码中。

if (file_exists('test/')) echo 'Ok it wasn\'t that';
else echo 'Um, create a directory called test here: '.dirname(__FILE__);

答案 1 :(得分:0)

确保脚本所在的目录中存在a test/目录,然后您可以使用

$out = dirname(__FILE__) . '/' . $_FILES['uploaded']['name'];
move_uploaded_file($_FILES['uploaded']['tmp_name'], $out);

答案 2 :(得分:0)

通过FTP客户端将目录权限(CHMOD)更改为777(读取,写入,执行所有者,组,公共)。