GVKun编程网logo

Ded帝国CMS删除文档同时删除图片及附件的办法(帝国cms清空文章id)

11

如果您对Ded帝国CMS删除文档同时删除图片及附件的办法感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于Ded帝国CMS删除文档同时删除图片及附件的办法的详细内容,我们还将为

如果您对Ded帝国CMS删除文档同时删除图片及附件的办法感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于Ded帝国CMS删除文档同时删除图片及附件的办法的详细内容,我们还将为您解答帝国cms清空文章id的相关问题,并且为您提供关于Dede 删除文档同时文章中的图片的方法、dede5.5修改"Ded帝国CMS提示信息"的办法、dedecms v5.6删除文章同时删除对应图片/附件、dedecms v5.6删除新闻同时删除对应图片/附件的有价值信息。

本文目录一览:

Ded帝国CMS删除文档同时删除图片及附件的办法(帝国cms清空文章id)

Ded帝国CMS删除文档同时删除图片及附件的办法(帝国cms清空文章id)

 

织梦前台会员发布的信息在删除时总是不能删除附件,在这里以普通新闻图片附件为例跟大家交流一下。

 

  dede上传的附件信息统统存在uploads表里,而这些附件怎样才能跟其母信息相关联?关键是uploads表里的arcid,也就是母信息的id号。dede在删除母信息时也是通过arcid来删除其附件信息。而前台会员上传的附件信息在保存到uploads表里时arcid默认为0,所以在删除母信息时附件肯定删除不了。

 

  例如:添加一条记录,他的id号为1(以arctiny表的id为准 ),信息内容中有5张图片,在保存时这5张图片信息将存为5条uploads记录,并且这5条记录的arcid都为1(dede默认为0)。所以只要我们在上传附件信息时将其母信息的id号同时保存到uploads表里就可以了。

 

  dede后台管理员上传附件时用到两个函数 AddMyAddon()和ClearMyAddon(),AddMyAddon是用来将上传的附件信息存到缓存文件里,在保存母信息时用缓存文件内容替换uploads表里的附件信息记录,等一切都保存完后ClearMyAddon清除缓存。在这里我们移花接木将这两个函数用在前台用户上。

 

  *步:打开member/member日志in.class.php,

 

  在第3行添加:session_start();//主要是为了给每个用户建立随机id号

 

  在第84行添加 AddMyAddon函数和ClearMyAddon函数,防止拷贝错误也可以直接打开include/user日志in.class.php文件在79行找到这两个函数:

 

Copy to ClipboardLiehuo.Net Codes引用的内容:[]

/***************************************** 

发布文档临时附件信息缓存、发文档前先清空附件信息 

发布文档时涉及的附件保存到缓存里,完成后把它与文档关连 

******************************************/ 

function AddMyAddon($fid, $filename) 

$cacheFile = DEDEDATA.'/cache/addon-2'.session_id().'.inc'; 

if(!file_exists($cacheFile)) 

$fp = fopen($cacheFile, 'w'); 

fwrite($fp, '<'.'?php'." "); 

fwrite($fp, "$myaddons = array(); "); 

fwrite($fp, "$maNum = 0; "); 

fclose($fp); 

} //liehuo.net 

include($cacheFile); 

$fp = fopen($cacheFile, 'a'); 

$arrPos = $maNum; 

$maNum++; 

fwrite($fp, "$myaddons[$maNum] = array('$fid', '$filename'); "); 

fwrite($fp, "$maNum = $maNum; "); 

fclose($fp); 

//清理附件,如果关连的文档ID,先把上一批附件传给这个文档ID 

function ClearMyAddon($aid=0, $title='') 

global $dsql; 

$cacheFile = DEDEDATA.'/cache/addon-2'.session_id().'.inc'; 

$_SESSION['bigfile_info'] = array(); 

$_SESSION['file_info'] = array(); 

if(!file_exists($cacheFile)) 

return ; 

//把附件与文档关连 

if(!empty($aid)) 

include($cacheFile); 

foreach($myaddons as $addons) 

if(!empty($title)) { 

$dsql->ExecuteNoneQuery("Update `dede_uploads` set 

 

arcid='$aid',title='$title' where aid='{$addons[0]}'"); 

else { 

$dsql->ExecuteNoneQuery("Update `dede_uploads` set 

 

arcid='$aid' where aid='{$addons[0]}' "); 

@unlink($cacheFile); 

}

第二部:打开member/inc/inc_archives_functions.php 

在144行$dsql->ExecuteNoneQuery($inquery);下面添加:

 

Copy to ClipboardLiehuo.Net Codes引用的内容:[]

$fid = $dsql->GetLastID(); 

AddMyAddon($fid, $filename);

第三步:打开member/article_add.php(编辑的话就打开article_edit.php,大同小异),, 

 

大概在16行添加:

 

Copy to ClipboardLiehuo.Net Codes引用的内容:[]

ClearMyAddon();//添加-->先清除一下缓存

$cInfos = $dsql->GetOne("Select * From `dede_channeltype` where id='$channelid'; "); 

 

在大概83行 

//生成文档ID 

$arcID = GetIndexKey($arcrank,$typeid,$sortrank,$channelid,$senddate,$mid); 

if(empty($arcID)) 

ShowMsg("无法获得主键,因此无法进行后续操作!","-1"); 

exit(); 

}

 

ClearMyAddon();//添加-->保存后清除缓存。

 

ok了!这样添加信息后缩略图和信息内容中的图片都可以删除了

本文章网址:http://www.ppssdd.com/code/4225.html。转载请保留出处,谢谢合作!

Dede 删除文档同时文章中的图片的方法

Dede 删除文档同时文章中的图片的方法

首先,在"/include"目录下建立"extend.func.php"文件. 然后,将以下内容保存在"extend.func.php"文件中,一共三个函数:


//解析body数据,获得所有图片的绝对地址
function GetPicsTruePath($body,$litpic)
{
$delfiles = array();//存储图片地址数据
if(!empty($litpic))
{
$litpicpath = GetTruePath();
$litpicpath .= $litpic;
$delfiles[] = $litpicpath;//缩略图地址
}
preg_match_all("/src=[\"|''|\S|\s]([^ title="liehuo.net" |\/|>]*){0,}(([^>]*)\.(gif|jpg|png))/isU",$body,$tmpdata);
$picspath = array_unique($tmpdata[2]);//body中所有图片的地址
foreach($picspath as $tmppath)
{
$path = GetTruePath();//获得绝对路径
$picpath = preg_replace("/[a-zA-z]+:\/\/[^ |\/|\s]*/",'''',$tmppath);//去掉网址部分
$path .=$picpath;
$delfiles[] = $path;//保存处理后的数据
}
return $delfiles;
}
//获得文章Body数据
function GetArcBody($aid)
{
global $dsql;
$query = "SELECT [url=mailto:dede_addonarticle.body]dede_addonarticle.body[/url] FROM [url=mailto:`dede_addonarticle]`dede_addonarticle[/url]` WHERE [url=mailto:dede_addonarticle.aid]dede_addonarticle.aid[/url] = ''$aid''";
$row = $dsql->GetOne($query);
if(is_array($row))
return $row;
else
return false;
}
//写入日志文件
function WriteToDelFiles($msg)//删除文章的时候会通过此函数记录日志
{
if(empty($msg)) $savemsg="未获得消息";
else $savemsg = $msg;
$errorFile = dirname(__FILE__).''/../data/del_body_file.txt'';//删除记录文件
$fp = @fopen($errorFile, ''a'');
@fwrite($fp,"\r\n{$savemsg}");
@fclose($fp);
}

接下来打开"/dede/inc/inc_batchup. php"文件。
1:在33行下方加入,也就是"$arcRow = $dsql->GetOne($arcQuery);"下方:
$arcBodyRow = GetArcBody($aid);
2:在138行下方加入,也就是"return true;"上方:


//解析Body中的资源,并删除
$willDelFiles = GetPicsTruePath($arcBodyRow[''body''],$arcRow[''litpic'']);
$nowtime = time();
$executetime = MyDate(''Y-m-d H:i:s'',$nowtime);//获得执行时间
$msg = "\r\n文章标题:$arcRow[title]";
WriteToDelFiles($msg);
if(!empty($willDelFiles))
{
foreach($willDelFiles as $file)
{
if(file_exists($file) && !is_dir($file))
{
if(unlink($file)) $msg = "\r\n位置:$file\r\n结果:删除成功!\r\n时间:$executetime";
else $msg = "\r\n位置:$file\r\n结果:删除失败!\r\n时间:$executetime";
}
else $msg = "\r\n位置:$file\r\n结果:文件不存!\r\n时间:$executetime";
WriteToDelFiles($msg);
}//END foreach
}
else
{
$msg = "\r\n未在Body中解析到数据\r\nBody原始数据:$arcBodyRow[body]\r\n时间:$executetime";
WriteToDelFiles($msg);
}

至此,全部修改完成,删除文章时,程序会分析Body中的图片地址,然后删除.并在/data/目录下,产生日志记录文件:del_body_file.txt。

跟版网-专业织梦模板下载平台,转载请注明出处:http://www.genban.org/news/dedecms-7438.html

本文同步分享在 博客“lxw1844912514”(CSDN)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

dede5.5修改"Ded帝国CMS提示信息"的办法

dede5.5修改"Ded帝国CMS提示信息"的办法

 

织梦内容管理系统(DedeCMS),是一个集内容发布、编辑、管理检索等于一体的网站管理系统(Web CMS),他拥有国外CMS众多特点之外,还结合中国用户的需要,对内容管理系统概念进行明确分析和定位。

 

  近日dedecms发布新版5.5(GBK/UTF8),受到很多网站管理员朋友的喜爱。然,作为产品肯定要保护其版权,cms中难免有一些版权信息和产品字样,其中*典型的就是DEDECMS的跳转提示信息“Ded帝国CMS提示信息”,那么怎么把这一字样改为自己网站的名称呢?

 

  其实特别简单,在5.1版本中,修改文件是:在include文件夹里找到inc_functions.php。但是从5.3版本开始,织梦变了系统结构,使得很多文件都进行了调整,一个聪明的网站管理员不用借助搜索引擎就可以办到的,诸如利用文字搜索软件就可以解决。笔者利用“字符批量工具”就查到了这一文件:include/common.func.php(include在很多cms中都是核心文件存在的目录),找到了这一文件,那么修改起来就简单多了。

 

  用记事本打开common.func.php文件,ctrl+f查找:Ded帝国CMS提示信息,找到以后(共有两处),修改为你想要的就可以了。

 

  烈火小编提示:为了支持织梦开发者,大家还是尽量保留一些版权信息,不一定全站都要保留,您可以像admin5一样,在首页给dedecms留一个链接!

本文章网址:http://www.ppssdd.com/code/6472.html。转载请保留出处,谢谢合作!

dedecms v5.6删除文章同时删除对应图片/附件

dedecms v5.6删除文章同时删除对应图片/附件

  以前提到过Dedecms删除文章同时删除图片/附件的办法(适用Dedecms v5.3、适用Dedecms v5.5),今天在Dedecms论坛看到一位朋友发出关于Dedecms v5.6的删除文章同时删除图片/附件的修改方法,就把文章转过来分享给大家,同时向作者表示感谢。

  修改方法:

  下载下边的附件后,解压待用。找到网站上对应的文件,先备份。然后将解压的文件上传至网站对应目录,在后台更新缓存即可。

  

下载附件:dede5.6_del.rar

总结

以上是小编为你收集整理的dedecms v5.6删除文章同时删除对应图片/附件全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

dedecms v5.6删除新闻同时删除对应图片/附件

dedecms v5.6删除新闻同时删除对应图片/附件

 

以前烈火提到过DEDECMS删除新闻同时删除图片/附件的方案(适用DEDECMS v5.3、适用DEDECMS v5.5),今天烈火在dedecms论坛看到一位朋友发出关于dedecms v5.6的删除新闻同时删除图片/附件的修改办法,就把新闻转过来分享给大家,同时向作者表示感谢。

  修改办法:

  download下边的附件后,解压待用。找到网站上对应的文件,先备份。然后将解压的文件上传至网站对应目录,在后台更新缓存即可。

本文章网址:http://www.ppssdd.com/code/7266.html。转载请保留出处,谢谢合作!

关于Ded帝国CMS删除文档同时删除图片及附件的办法帝国cms清空文章id的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于Dede 删除文档同时文章中的图片的方法、dede5.5修改"Ded帝国CMS提示信息"的办法、dedecms v5.6删除文章同时删除对应图片/附件、dedecms v5.6删除新闻同时删除对应图片/附件等相关内容,可以在本站寻找。

本文标签: