删除文章的同时自动删除生成的html文件

softyun3年前cms教程55

功能:删除文章的同时自动删除生成的html文件
前两天改的忘记改删除文章分页了,这回修正一下:
可以删除文章分页HTML了
第一步:
archives表建立一字段:arcurl

第二步:打开inc_archives_view.php
找到
//循环生成HTML文件
//-------------------------------------------------
改为
//循环生成HTML文件
//-------------------------------------------------
for($i=1;$i<=$this->TotalPage;$i++)
{
if($i>1){ $truefilename = $cfg_basedir.$fileFirst."_".$i.".".$this->ShortName;
$filenamefy = $fileFirst."_".$i.".".$this->ShortName;
$filenameall = $filenameall.':'.$filenamefy;
}
else{ $truefilename = $cfg_basedir.$filename;
$filenameall = $filename.$filenameall;
}
$this->ParseDMFields($i,1);
$this->dtp->SaveTo($truefilename);
}
$this->dsql->SetQuery("Update dede_archives set ismake=1,arcurl='$filenameall' where ID='".$this->ArcID."'");
$this->dsql->ExecuteNoneQuery();
$this->Close();
return $filename;
}

第三步:打开archives_do.php
找到
//读取文档信息
$arctitle = "";
$arcurl = "";
$arcQuery = "
Select dede_archives.title,dede_channeltype.addtable From dede_archives
left join dede_channeltype on dede_channeltype.ID=dede_archives.channel where dede_archives.ID='$aid'
";
$arcRow = $dsql->GetOne($arcQuery);
。。。
。。到。。
}//foreach

改为
//读取文档信息
$arcQuery = "
Select dede_archives.title,dede_archives.arcurl,dede_channeltype.addtable From dede_archives
left join dede_channeltype on dede_channeltype.ID=dede_archives.channel where dede_archives.ID='$aid'
";
$arcRow = $dsql->GetOne($arcQuery);
$arcurl = $arcRow['arcurl'];
$arcurls = explode(":",$arcurl);
$num_arcurls = count($arcurls)-1;

if(!is_array($arcRow)){ continue; }
$dsql->SetQuery("Delete From dede_archives where ID='$aid'");
$dsql->ExecuteNoneQuery();
if($arcRow['addtable']!=""){
$dsql->SetQuery("Delete From ".$arcRow['addtable']." where aid='$aid'");
$dsql->ExecuteNoneQuery();
}
$dsql->SetQuery("Delete From dede_feedback where aid='$aid'");
$dsql->ExecuteNoneQuery();
if(!ereg("?",$arcurl)){
if ($num_arcurls <2){
$htmlfile = $cfg_basedir.$arcurl;
if(file_exists($htmlfile) && !is_dir($htmlfile)) unlink($htmlfile);
}
else {
for($i=0;$i<=$num_arcurls;$i++){
$htmlfile = $cfg_basedir.$arcurls[$i];
if(file_exists($htmlfile) && !is_dir($htmlfile)) unlink($htmlfile);}
}
}
}//foreach

官方原帖:2578

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

DedeCMS安装教程[V5.1SP1为例]

第一步:上传安装文件 将压缩包内的upload目录下的文件上传到你的空间 第二步:运行安装文件 如果你上传到网站根目录 即输入域名直接进入的目录 直接输入域名 如果上传到网站根目录下的子目录,如:/c...

关于DedeCMS V5.3的系统安装教程

我们完成了环境的准备之后,下面就可以通过在浏览器中输入安装向导的网址开始进行DedeCMS的安装,在安装完成之后我们就可以看到我们的站点。我们下载下来通常是一个压缩包,将其解压,然后将upload文件...

dedecms自定义表单后台显示时间格式错误的解决方法

今天教给大家一些织梦dedecms自定义表单后台显示时间格式错误的解决办法,比较简单,希望可以帮助到你。在制作dedecms企业模板的时候 很多客户都需要制作一个在线订购功能!仔细的朋友就会发现使用的...

增加父栏目调用,以及多级支持currentstyle!

因为本人需要,自己就动手修改了其中代码,拿来分享,能用到的朋友可以借鉴一下!\include\inc_typelink.php1、在这段代码后 大概263行if($reID==0 &&...

DedeCms教程:DedeCMS站点高级安全策略(Linux篇)

更改纪录: 2012-06-06:增加Nginx服务器的配置 在Linux环境下搭建安装DedeCMS本篇不再具体说明,大家可以点击文档《Linux下安装DedeCMS及安全设置》来查看安装和...

织梦DedeCMS栏目二级域名绑定方法

织梦DedeCMS栏目二级域名绑定方法1.    概念如果一个域名是abc ,是由一个字符串加一个域名尾,中间用“.”号隔开。这就是一个一级域名,如果在顶级域名前在由“.”隔开加上不同的字符,比如bb...