move_uploaded_file()在PHP中没有按预期工作(即根本没有工作)

时间:2011-02-24 14:03:16

标签: php http file-upload

使用此行

$file_move = move_uploaded_file($_FILES['uploadedfile']['tmp_name'],
                                plugins_url('/css', __FILE__));

返回:

  

move_uploaded_file(http:// localhost / * )[function.move-uploaded-file]:无法打开流:HTTP包装器不支持可写连接第60行/Applications/MAMP/htdocs/***/as_settings.php

我检查了两个参数,它们是正确的。我是编码的新手,我错过了什么?

--- EDIT

在回答答案时,已将代码更改为:

$dir = ABSPATH . 'wp-content/plugins/app-switcher/css';
$file = $_FILES['uploadedfile']['tmp_name'];
$file_move = move_uploaded_file($file,$dir);

现在我的错误回复是:

  

警告:move_uploaded_file(/ Applications / MAMP / htdocs / / wp-content / plugins / app-switcher / css /)[function.move- upload-file]:无法打开流:第61行/Applications/MAMP/htdocs//wp-content/plugins/app-switcher/as_settings.php中的目录< / p>

4 个答案:

答案 0 :(得分:17)

错误信息非常明显,您的目标文件应该是路径,而不是URL

答案 1 :(得分:2)

您无法使用http://网址作为move_uploaded_file()的目标。您需要使用文件路径。

您没有说明您使用的是哪种框架,但它可能与plugins_url()的对应框架返回文件路径。

答案 2 :(得分:0)

第二个参数不应该是URL

答案 3 :(得分:0)

现在仍然很明显 你必须传递一个文件名,而不是目录