有关于weiphp2.00611上传sae的一些注意(图片上传解决方案)
一、安装中注意的事项 安装时使用的系统为weiphp2.0611 版本 1.将所有文件上传到代码库中
2.按照步骤进行安装weiphp,注意在数据库导入的时候需要手动导入。
3.注意提示中会教你如何修改配置文件,这个时候你就要注意收到修改一下了。
二、图片上传需要修改配置文件。
1.将 Application\Home\Conf\config.php
以及 Application\Admin\Conf\config.php 中的
'PICTURE_UPLOAD_DRIVER'=>'local',
修改为:
'PICTURE_UPLOAD_DRIVER'=>'Sae',
//SAE上传文件驱动配置
'UPLOAD_SAE_CONFIG'=>array(
'rootPath'=>'http://' . $_SERVER['HTTP_APPNAME'] . '-uploads.stor.sinaapp.com/Editor/',
'domain'=>'uploads',
),
2.新建domain(uploads)
三、图片展示问题。
先在上传图片是没问题的,但是你会发现展示图片还是有问题,
我这里使用的是绝对路径的方式,wp_picture表中url字段我定义为绝对路径我将图片的绝对路径保存在这个字段中。修改
1.
/* 记录文件信息 */ 文件路径为Application\Home\Model\PictureModel.php中修改
public function upload($files, $setting, $driver = 'local', $config = null) 该为
public function upload($files, $setting, $driver = 'Sae', $config = null)
2.在 $value['path'] = substr($setting['rootPath'], 1).$value['savepath'].$value['savename'];
//在模板里的url路径 这段代码下面添加。
if($driver =='Sae')
{
$st=new \SaeStorage();
$arr=explode('/',trim($setting['rootPath'],'./'));
$domain=strtolower(array_shift($arr));
$rootPath=implode('/',$arr);
$value['url'] =$st->getUrl($domain,$rootPath)."/".$value['savepath'].$value['savename'];
}
// end by arv000
3.修改获取路劲
文件路径
Application\common\common\function.php 大概在1052行
function get_cover_url($cover_id) {
if (empty ( $cover_id )) {
return '';
}
// 由原来的图片获取path修改为,图片的url地址优先获取,如果找不到才获取本地地址。
$url = get_cover ( $cover_id, 'url' );
if(empty($url))
{
$url = SITE_URL . get_cover ( $cover_id, 'path' );
}
// end
return $url;
}
4.修改模板中的获取方式。
4.1文件路径Application\Home\View\defualt\Addons\edit.html 大概在97行
中 <div class="upload-pre-item"><img width="120" height="120" src="__ROOT__{$data[$field['name']]|get_cover='local'}"/></div>
修改为:
<div class="upload-pre-item"><img width="120" height="120"
src="__ROOT__{$data[$field['name']]|get_cover='url'}"/></div>
4.2 文件路径Application\Home\View\defualt\Addons\config.html 大概在77行
中 <div class="upload-pre-item"><img width="120" height="120" src="__ROOT__{$data[$field['name']]|get_cover='path'}"/></div>
修改为:
<div class="upload-pre-item"><img width="120" height="120"
src="__ROOT__{$data[$field['name']]|get_cover='url'}"/></div>
特别提示:因为使用了url来保存,所以遇到以上情况,请一起修改。将path修改为url
补充说明:20140616
5.有关于Ueditor上传图片的修改。5.1首先需要修改上传的方式。
将Addons\Editor\Controller\UploadController.php 中的大概23行
$this->uploader = new Upload ( $setting, 'lolcal' );
修改为:
$this->uploader = new Upload ( $setting, 'sae' );
5.2 同样修改:
将Addons\EditorForAdmin\Controller\UploadController.php 中的大概27行
$this->uploader = new Upload ( $setting, 'lolcal' );
修改为:
$this->uploader = new Upload ( $setting, 'sae' );
5.3eidtor图片展示问题。
将Addons\EditorForAdmin\Controller\UploadController.php 中的大概90行
$img = $info ['imgFile'] ['rootpath'] . $info ['imgFile'] ['savepath'] . $info ['imgFile'] ['savename'];
修改为:
if( strtolower(C("PICTURE_UPLOAD_DRIVER")) == "sae")
{
$st=new \SaeStorage();
$arr=explode('/',trim($info ['imgFile'] ['rootpath'],'./'));
$domain=strtolower(array_shift($arr));
$rootPath=implode('/',$arr);
$img =$st->getUrl($domain,$rootPath)."/".$info ['imgFile'] ['savepath'] . $info ['imgFile'] ['savename'];
}
else
{
$img = $info ['imgFile'] ['rootpath'] . $info ['imgFile'] ['savepath'] . $info ['imgFile'] ['savename'];
}
5.4修改eidtor配置Application\home\Conf\config.php 大概132行
'rootPath' => './Uploads/Editor/'.token.'/', //保存根路径
修改为:
'rootPath' => './Uploads/Editor/', //保存根路径
如果有更好的修改图片展示问题的方法请指教一下。谢谢您的帮助。或者有不好的地方也可以直接私密我,我会尽力解决
有关于weiphp2.00611上传sae的一些注意(图片上传解决方案)的更多相关文章
- Bootstrap+PHP fileinput 实现多图上传 这是ajax上传,只能单张单张图片地上传
插件及源代码可以在这里下载 http://www.jq22.com/jquery-info5231下面是根据下载的demo进行补充:使用bootstrap界面美观,可预览,可拖拽上传,可配合ajax异 ...
- Django文件上传【单个/多个图片上传】
准备工作 python:3.6.8 django:2.2.1 新建django项目 确定项目名称.使用的虚拟环境[当然这个也可以后期修改].app的名称 创建成功,选择在新的窗口中打开 图片上传 修改 ...
- commons-fileload图片文件上传工具 , servlet文件图片上传案列
本案列是java maven工程小项目,提供个大家学习! 1.在pom.xml文件中导入依赖: <!--文件上传依赖--><dependency> <groupId&g ...
- 阿里云OSS图片上传plupload.js结合jq-weui 图片上传的插件
项目中用到了oss上传,用的plupload,奈何样式上不敢恭维,特别是放在移动端上使用.于是自己把它移植到了jq weui的上传图片组件上. 更改:选择照片后确认即及时上传至oss服务器,不限制上传 ...
- 在SAE上使用Ueditor的图片上传功能
SAE上是没有文件夹读写权限的,所以要在SAE使用Ueditor的图片上传功能须要借助SAE的Storage服务. 一.开通Storage服务 在SAE控制台开通Storage服务,并新增一个doma ...
- JS图片上传预览插件制作(兼容到IE6)
其实,图片预览功能非常地常见.很意外,之前遇到上传图片的时候都不需要预览,也一直没有去实现过.现在手上的项目又需要有图片预览功能,所以就动手做了一个小插件.在此分享一下思路. 一.实现图片预览的一些方 ...
- Nodejs之MEAN栈开发(四)---- form验证及图片上传
这一节增加推荐图书的提交和删除功能,来学习node的form提交以及node的图片上传功能.开始之前需要源码同学可以先在git上fork:https://github.com/stoneniqiu/R ...
- PHP 图片上传
PHP上传的简单案例: Html文件: <html> <form action="index.php" name="form" method= ...
- ajax图片上传及FastDFS入门案例.
今天来开始写图片上传的功能, 现在的图片上传都讲求 上传完成后立刻回显且页面不刷新, 这里到底是怎么做的呢? 当然是借助于ajax了, 但是ajax又不能提交表单, 这里我们还要借助一个插件: jqu ...
- [iOS AFNetworking框架实现HTTP请求、多文件图片上传下载]
简单的JSON的HTTP传输就不说了,看一个简单的DEMO吧. 主要明白parameters是所填参数,类型是字典型.我把这部分代码封装起来了,以便多次调用.也许写在一起更清楚点. #pragma m ...
随机推荐
- OpenHarmony 3.1 Beta版本关键特性解析——HAP包安装实现剖析
(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点) 石磊 随着社会的不断发展,人们逐渐注重更加高效.舒适.便捷.有趣的生活和工作体验. OpenAtom OpenHa ...
- Java语言学习day30--8月5日
###10String类的其他方法 * A:String类的其他方法 * a: 方法介绍 * int length(): 返回字符串的长度 * String substring(int beginIn ...
- Hyperledger Fabric 部署在多个主机上
前言 在实验Hyperledger Fabric无排序组织以Raft协议启动多个Orderer服务.TLS组织运行维护Orderer服务中,我们已经完成了使用提供 TLS-CA 服务的 council ...
- python学习-Day18
目录 今日内容详细 模块 循环导入问题 判断文件类型 py文件可以被分为两种类型 内置变量 __ name __ 模块的查找顺序 验证先从内存空间中查找 验证再从内置模块中查找 验证sys.path ...
- 命令工具 -(1)Vim 文本编辑器学习
关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ 前言 提起 Linux,大家都听说过这句话:Linux 一切皆文件. 配置一个服务就是在修改它 ...
- wlile、 for循环和基本数据类型及内置方法
while + else 1.while与else连用 当while没有被关键字break主动结束的情况下 正常结束循环体代码之后执行else的子代码 """ while ...
- 一探 Vue 数据响应式原理
一探 Vue 数据响应式原理 本文写于 2020 年 8 月 5 日 相信在很多新人第一次使用 Vue 这种框架的时候,就会被其修改数据便自动更新视图的操作所震撼. Vue 的文档中也这么写道: Vu ...
- Element中Tree树结构组件中实现Ctrl和Shift多选
在Element中的树结构中, 实现多选功能,首先的是判断有没有按下键盘ctrl和shift按键.但是在Element中的tree组件的左键点击事件是没有提供$event鼠标属性判断的.所以就需要在函 ...
- ArcGIS和ArcEngine导出地图时,png格式支持背景透明
1.ArcGIS支持导出PNG,背景透明 导出png时,背景色和透明色不能设置为空,必须设置为同一个颜色,通常使用白色. 2.ArcEngine支持导出PNG,背景透明 //1.创建export IE ...
- MySQL(8) - MySQL的事务机制
MySQL数据库的事务机制 1.1.事务的概念和特性 1.2.事务的隔离级别 repeatable read是mysql默认的事务隔离级别 #事务A #事务A,临时修改工资,未commit, STAR ...