【问题标题】:WordPress: trying to upload image, the media_handle_upload() won't workWordPress:尝试上传图片,media_handle_upload() 不起作用
【发布时间】:2013-03-13 17:27:39
【问题描述】:

尝试制作表单以将图片上传到 Wordpress,然后将该图片设置为帖子的缩略图。但我似乎无法让 media_handle_upload() 函数正常工作。

文件的表单输入

 <input type="file" name="image" />

那么这是服务器端代码

media_handle_upload( $_FILES['image'], 22 );

这就是我得到的回报

object(WP_Error)#212 (2) { ["errors"]=> array(1) { ["upload_error"]=> array(1) { [0]=> string(212) "File is empty...." } } ["error_data"]=> array(0) { } }

我尝试了几种不同的方法来输入文件变量,但似乎都不起作用,我这样做是因为 $file_id 到底是什么;

【问题讨论】:

  • 您是否在表单中添加了enctype="multipart/form-data"?如果不是,那么$_FILES 数组将为空。您也可以尝试转储 $_FILES 数组的内容,看看它是否真的包含数据。
  • 是的,我有,如果我使用 var_dump($_FILES['image']);我得到了所有的文件信息
  • 如果我查看media_handle_upload() 的描述,那么看起来您传递的参数不正确?第一个应该是上传文件的$_FILES 的索引。 codex.wordpress.org/Function_Reference/media_handle_upload
  • 是的,我正在尝试弄清楚如何正确传递文件。我检查了他们的文档,但我似乎无法找出如何通过它
  • media_handle_upload( xxxx , 22 );

标签: php image wordpress forms file-upload


【解决方案1】:

查看documentationmedia_handle_upload(),第一个参数应该是$_FILES 数组中文件的索引名称,因此在您的情况下应该如下所示:

media_handle_upload('image', 22);

【讨论】:

    猜你喜欢
    • 2016-12-25
    • 2013-06-23
    • 2014-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-15
    相关资源
    最近更新 更多