【发布时间】:2018-03-07 12:17:08
【问题描述】:
对于我的后端组件,我需要能够为我的项目上传图片。一切正常,我为图像添加字段:
<field
type="file"
name="category_image"
accept="image/*"
label="COM_SKYCATALOG_ITEM_CATEGORY_IMAGE_LABEL"
directory=""
preview="false"
/>
然后更新save()方法来控制上传:
$jinput = JFactory::getApplication()->input;
$files = $jinput->files->get('jform');
$fileinfo =pathinfo($files['category_image']['name']);
$ext = $fileinfo['extension'];
$filename = time().".$ext";
$tmp_file = $files['category_image']['tmp_name'];
$dest = "../media/com_xxxxx/upload/".$filename;
if (JFile::upload($tmp_file, $dest)) {
// successed :)
} else {
// failed :(
echo "FAAAIL!!!";
die();
}
当我选择文件并保存项目时,文件上传到文件夹,但类别图像字段为空。而且 mysql 表中 category_image 的字段也没有更新,但是当我使用 media 字段类型时它工作正常。
这里可能有什么问题?
我不喜欢媒体管理器使用起来很慢。
【问题讨论】:
-
好的,我找到了部分解决方案 - stackoverflow.com/questions/12927464/… 现在它保存在 db 上传的文件名中,但是当我打开项目时仍然没有加载它
标签: php mysql file joomla upload