#### 在模块中上传附件至服务器
|| 系统上传组件
系统上传组件
如果使用系统组件上传,保存图片时只需要从images开始保存,例如: images/xxx/xxx.jpg ,系统会自动处理此图片为远程附件
|| 自己调用file_upload()函数
自己调用file_upload()函数
如果是自己处理上传图片,需要手动调用file_remote_upload()函数上传远端。
~~~
//.....各种其它代码
$pathname = 'images/6/2015/12/gT1aQZ5WA1UAZu58ntKUa1Rkw811K8.jpg';
if (!empty($_W['setting']['remote']['type'])) { // 判断系统是否开启了远程附件
$remotestatus = file_remote_upload($pathname); //上传图片到远程
if (is_error($remotestatus)) {
message('远程附件上传失败,请检查配置并重新上传')
} else {
$remoteurl = tomedia($pathname); // 远程图片的访问URL
$pathname // 本地要存入库的地址
}
}
~~~
远程附件会自己把本地的图片删除掉,无论是上传成功或是失败。如果您在上传图片有需要缩放或是水印的需求,请先处理好,然后再统一上传到远程
#### 调用远程图片
调用显示图片使用系统的 tomedia() 函数,该函数有三种场景的使用
* php中:
~~~
/*处理icon图片链接*/
if (!empty($nav['icon'])) {
$nav['icon'] = tomedia($nav['icon']);
}
~~~
* html中:
~~~
<img src="{media 'images/6/2015/12/gT1aQZ5WA1UAZu58ntKUa1Rkw811K8.jpg'}" />
<img src="{php echo tomedia($nav['icon'])}" />
~~~
* Js中:
~~~
$img = tomedia('images/6/2015/12/gT1aQZ5WA1UAZu58ntKUa1Rkw811K8.jpg');
~~~