专业的织梦模板下载平台,更多精品模板,超低模板价格,网站建设如此简单!           QQ好友已满,→点此获取提取码←
当前位置:主页 > 建站教程 > 织梦CMS教程 >

织梦把图片发布到远程服务器(支持图集模型)

发布时间:2019-03-25  来源:六久阁  浏览:0  关键词:织梦远程服务器 图片发布 
阿里云最新活动2折低价服务器

Linux宝塔面板的小伙伴需要在PureFTPd里开启被动模式,windows小伙伴可以略过这一步

进入宝塔面板,右侧,软件管理,找到PureFTPd,设置,配置修改,搜索ForcePassiveIP,去掉它前面的#号,192.168.0.1改成你的外网IP,保存,重启PureFTPd或者服务器

织梦把图片发布到远程服务器(支持图集模型)

织梦把图片发布到远程服务器(支持图集模型)

其他linux环境的vsftpd,搜索pasv_address+外网IP

开启远程设置

织梦把图片发布到远程服务器(支持图集模型)

image.png


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、打开 /dede/album_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' => 0
);
$ftps = new FTP(); 
$ftps->connect($config);
$row2 = $dsql->GetOne("SELECT litpic FROM `dede_archives` WHERE id=$arcID");
$imglist = $row2['litpic'];
$row3 = $dsql->GetOne("SELECT imgurls FROM `$addtable` WHERE aid=$arcID");
$imgurls = $row3['imgurls'];
if($imgurls != '')
{
$dtp = new DedeTagParse();
$dtp->LoadSource($imgurls);
$images = array();
if(is_array($dtp->CTags))
{
foreach($dtp->CTags as $ctag)
{
if($ctag->GetName() == 'img')
{
$imglist .= ','.trim($ctag->GetInnerText());
}
}
}
$dtp->Clear();
}
$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 `imgurls`=REPLACE(`imgurls`,'/uploads','$ftpurl/uploadfile') WHERE `imgurls` LIKE '%/uploads%' AND `aid` = $arcID");
$ftps->close();
}


2、打开 /dede/album_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' => 0
);
$ftps = new FTP(); 
$ftps->connect($config);
$row2 = $dsql->GetOne("SELECT litpic FROM `dede_archives` WHERE id=$id");
$imglist = $row2['litpic'];
$row3 = $dsql->GetOne("SELECT imgurls FROM `$addtable` WHERE aid=$id");
$imgurls = $row3['imgurls'];
if($imgurls != '')
{
$dtp = new DedeTagParse();
$dtp->LoadSource($imgurls);
$images = array();
if(is_array($dtp->CTags))
{
foreach($dtp->CTags as $ctag)
{
if($ctag->GetName() == 'img')
{
$imglist .= ','.trim($ctag->GetInnerText());
}
}
}
$dtp->Clear();
}
$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 `imgurls`=REPLACE(`imgurls`,'/uploads','$ftpurl/uploadfile') WHERE `imgurls` LIKE '%/uploads%' AND `aid` = $id");
$ftps->close();
}


织梦二次开发QQ群

群号(383578617) DedeCMS织梦教程QQ群 如果您有任何织梦问题,请把问题发到群里,阁主将免费为您写解决教程!

相关文章

已有 0 人评论


CopyRight © 2016-2017 六久阁模板下载网 版权所有  备案号:滇ICP备15006281号-4 
本站部份内容来源自网络,文字、素材、图片版权属于原作者,本站转载素材仅供大家欣赏和分享,切勿做为商业目的使用。
如果侵害了您的合法权益,请您及时与我们,我们会在第一时间删除相关内容!