【织梦文章模型】缩略图和文章内容图片发布到远程服务器
发布时间:2020-12-26 编辑:√無∑情— 内容来源:收集于网络
1、打开 /dede/article_add.php 找到
//生成HTML
在它上面加入
$row1 = $dsql->GetOne("SELECT * FROM `dede_multiserv_config`");
$isftp = $row1['remoteuploads'];
$ftpurl = $row1['remoteupUrl'];
$ftpconfig = $row1['servinfo'];
$ftpconfig_arr = array();
$ftpconfig_txt = explode('|', $ftpconfig);
foreach($ftpconfig_txt as $str){
$ftpconfig_arr[] = trim($str);
}
if($isftp == 1){
$config = array(
'hostname' => $ftpconfig_arr[1],
'username' => $ftpconfig_arr[3],
'password' => $ftpconfig_arr[4],
'port' => $ftpconfig_arr[2],
'debug' => 'TRUE'
);
$ftps = new FTP();
$ftps->connect($config);
$row2 = $dsql->GetOne("SELECT litpic FROM `dede_archives` WHERE id=$arcID");
$imglist = $row2['litpic'];
$row3 = $dsql->GetOne("SELECT body FROM `$addtable` WHERE aid=$arcID");
preg_match_all("/<img([^>]*)\s*src=('|\")([^'\"]+)('|\")/", $row3['body'], $matches);
$arr=array_unique($matches[3]);
foreach($arr as $key){
$imglist .= ','.$key;
}
$imglistarr = array();
$imglist_txt = explode(',', $imglist);
foreach($imglist_txt as $str){
$remotefile = str_replace(DEDEROOT, '', $str);
$localfile = '..'.$remotefile;
$remotefile2 = str_replace('uploads/', 'uploadfile/', $remotefile);
$remotedir = preg_replace('/[^\/]*\.(jpg|gif|bmp|png)/', '', $remotefile2);
$ftps->rmkdir($remotedir);
$ftps->upload($localfile, $remotefile2);
}
$dsql->ExecuteNoneQuery("UPDATE `dede_archives` SET `litpic`=REPLACE(`litpic`,'/uploads','$ftpurl/uploadfile') WHERE `litpic` LIKE '%/uploads%' AND `id` = $arcID");
$dsql->ExecuteNoneQuery("UPDATE `$addtable` SET `body`=REPLACE(`body`,'/uploads','$ftpurl/uploadfile') WHERE `body` LIKE '%/uploads%' AND `aid` = $arcID");
$ftps->close();
}
2、打开 /dede/article_edit.php 找到
//生成HTML
在它上面加入
$row1 = $dsql->GetOne("SELECT * FROM `dede_multiserv_config`");
$isftp = $row1['remoteuploads'];
$ftpurl = $row1['remoteupUrl'];
$ftpconfig = $row1['servinfo'];
$ftpconfig_arr = array();
$ftpconfig_txt = explode('|', $ftpconfig);
foreach($ftpconfig_txt as $str){
$ftpconfig_arr[] = trim($str);
}
if($isftp == 1){
$config = array(
'hostname' => $ftpconfig_arr[1],
'username' => $ftpconfig_arr[3],
'password' => $ftpconfig_arr[4],
'port' => $ftpconfig_arr[2],
'debug' => 'TRUE'
);
$ftps = new FTP();
$ftps->connect($config);
$row2 = $dsql->GetOne("SELECT litpic FROM `dede_archives` WHERE id=$id");
$imglist = $row2['litpic'];
$row3 = $dsql->GetOne("SELECT body FROM `$addtable` WHERE aid=$id");
preg_match_all("/<img([^>]*)\s*src=('|\")([^'\"]+)('|\")/", $row3['body'], $matches);
$arr=array_unique($matches[3]);
foreach($arr as $key){
$imglist .= ','.$key;
}
$imglistarr = array();
$imglist_txt = explode(',', $imglist);
foreach($imglist_txt as $str){
if(preg_match('/uploads/', $str)){
$remotefile = str_replace(DEDEROOT, '', $str);
$localfile = '..'.$remotefile;
$remotefile2 = str_replace('uploads/', 'uploadfile/', $remotefile);
$remotedir = preg_replace('/[^\/]*\.(jpg|gif|bmp|png)/', '', $remotefile2);
$ftps->rmkdir($remotedir);
$ftps->upload($localfile, $remotefile2);
}
}
$dsql->ExecuteNoneQuery("UPDATE `dede_archives` SET `litpic`=REPLACE(`litpic`,'/uploads','$ftpurl/uploadfile') WHERE `litpic` LIKE '%/uploads%' AND `id` = $id");
$dsql->ExecuteNoneQuery("UPDATE `$addtable` SET `body`=REPLACE(`body`,'/uploads','$ftpurl/uploadfile') WHERE `body` LIKE '%/uploads%' AND `aid` = $id");
$ftps->close();
}
相关文章推荐:
1、织梦实现远程附件的方法(图片第三方储存)织梦二开教程分类
热门教程
- 织梦默认目录怎么更改?plus和include目录的重命名修改方法
- 织梦后台怎么简化?DEDECMS后台界面修改教程
- DEDECMS简略标题字数的修改方法
- 织梦前台模板里显示当前登录会员名
- 织梦DedeCms用SQL语句调用数据库任意内容教程+使用分析
- 织梦后台系统参数设置不能保存,要怎么操作?
- 织梦手机端实现搜索功能的方法
- 织梦模板标签结合str_replace()替换函数调用的方法
- 解决织梦DEDECMS中TAG标签字数长度限制的方法
- Dedecms增加随机问题防止被恶意注册会员
- 织梦默认【顶踩】功能美化修改
- dede会员密码找回邮件链接的前面多了一个域名
- dedecms搜索列表显示内容里面全部图片的方法
- dedecms文章列表显示内容里面全部图片的方法
- 织梦图集更改后不能显示略宿图的解决方法
- 织梦DedeCMS修改文章时怎么取消下载远程图片和资源
- 织梦dedeCMS大数据量时的优化方法
- 织梦实现直接显示PDF文件的方法










