有关于weiphp2.00611上传sae的一些注意(图片上传解决方案)

一、安装中注意的事项  安装时使用的系统为weiphp2.0611    版本     1.将所有文件上传到代码库中
     2.按照步骤进行安装weiphp,注意在数据库导入的时候需要手动导入。
     3.注意提示中会教你如何修改配置文件,这个时候你就要注意收到修改一下了。

二、图片上传需要修改配置文件。
1.将 ApplicationHomeConfconfig.php
以及 ApplicationAdminConfconfig.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.新建domainuploads


三、图片展示问题。
先在上传图片是没问题的,但是你会发现展示图片还是有问题,
我这里使用的是绝对路径的方式,wp_picture表中url字段我定义为绝对路径我将图片的绝对路径保存在这个字段中。修改
1.
/* 记录文件信息 */ 文件路径为ApplicationHomeModelPictureModel.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.修改获取路劲
文件路径 
Applicationcommoncommonfunction.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文件路径ApplicationHomeViewdefualtAddonsedit.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 文件路径ApplicationHomeViewdefualtAddonsconfig.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首先需要修改上传的方式。
将AddonsEditorControllerUploadController.php 中的大概23行

$this->uploader = new Upload ( $setting, 'lolcal' );

修改为:

$this->uploader = new Upload ( $setting, 'sae' );
5.2 同样修改:
将AddonsEditorForAdminControllerUploadController.php 中的大概27行

$this->uploader = new Upload ( $setting, 'lolcal' );

修改为:

$this->uploader = new Upload ( $setting, 'sae' );
5.3eidtor图片展示问题。
将AddonsEditorForAdminControllerUploadController.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配置ApplicationhomeConfconfig.php    大概132行

'rootPath' => './Uploads/Editor/'.token.'/', //保存根路径 
修改为:
                'rootPath' => './Uploads/Editor/', //保存根路径


如果有更好的修改图片展示问题的方法请指教一下。谢谢您的帮助。或者有不好的地方也可以直接私密我,我会尽力解决

原文地址:https://www.cnblogs.com/arv000/p/3834619.html