| 
							- <?php
 - if (!defined('DEDEINC')) exit('dedebiz');
 - /**
 -  * 文档操作处理函数
 -  * 
 -  * @version        $Id: inc_batchup.php 1 13:52 2010年7月9日Z tianya $
 -  * @package        DedeBIZ.Member
 -  * @copyright      Copyright (c) 2022, DedeBIZ.COM
 -  * @license        https://www.dedebiz.com/license
 -  * @link           https://www.dedebiz.com
 -  */
 - require_once(DEDEINC."/channelunit.func.php");
 - 
 - /**
 -  *  删除文档
 -  *
 -  * @access    public
 -  * @param     int  $aid  文档ID
 -  * @return    bool
 -  */
 - function DelArc($aid)
 - {
 -     global $dsql, $cfg_cookie_encode, $cfg_ml, $cfg_upload_switch, $cfg_medias_dir;
 -     $aid = intval($aid);
 - 
 -     //读取文档信息
 -     $arctitle = '';
 -     $arcurl = '';
 - 
 -     $arcQuery = "SELECT arc.*,ch.addtable,tp.typedir,tp.typename,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath,ch.nid
 -           FROM `#@__archives` arc
 -           LEFT JOIN `#@__arctype` tp ON tp.id=arc.typeid
 -           LEFT JOIN `#@__channeltype` ch ON ch.id=arc.channel
 -         WHERE arc.id='$aid' ";
 -     $arcRow = $dsql->GetOne($arcQuery);
 -     if (!is_array($arcRow)) {
 -         return false;
 -     }
 - 
 -     //删除数据库的内容
 -     $dsql->ExecuteNoneQuery(" DELETE FROM `#@__arctiny` WHERE id='$aid' ");
 -     if ($arcRow['addtable'] != '') {
 -         //判断删除文章附件变量是否开启;
 -         if ($cfg_upload_switch == 'Y') {
 -             //判断文章属性;
 -             switch ($arcRow['nid']) {
 -                 case "image":
 -                     $nid = "imgurls";
 -                     break;
 -                 case "article":
 -                     $nid = "body";
 -                     break;
 -                 case "soft":
 -                     $nid = "softlinks";
 -                     break;
 -                 case "shop":
 -                     $nid = "body";
 -                     break;
 -                 default:
 -                     $nid = "";
 -                     break;
 -             }
 -             if ($nid != "") {
 -                 $row = $dsql->GetOne("SELECT $nid FROM ".$arcRow['addtable']." WHERE aid = '$aid'");
 -                 $licp = $dsql->GetOne("SELECT litpic FROM `#@__archives` WHERE id = '$aid'");
 -                 if ($licp['litpic'] != "") {
 -                     $litpic = DEDEROOT.$licp['litpic'];
 -                     if (file_exists($litpic) && !is_dir($litpic)) {
 -                         @unlink($litpic);
 -                     }
 -                 }
 -                 $tmpname = '/(\\'.$cfg_medias_dir.'.+?)(\"| )/';
 - 
 -                 //取出文章附件;
 -                 preg_match_all("$tmpname", $row["$nid"], $delname);
 - 
 -                 //移出重复附件;
 -                 $delname = array_unique($delname['1']);
 -                 foreach ($delname as $var) {
 -                     $dsql->ExecuteNoneQuery("DELETE FROM `#@__uploads` WHERE url='$var' AND mid = '$cfg_ml->M_ID'");
 -                     $upname = DEDEROOT.$var;
 -                     if (file_exists($upname) && !is_dir($upname)) @unlink($upname);
 -                 }
 -             }
 -         }
 -         $dsql->ExecuteNoneQuery("DELETE FROM `".$arcRow['addtable']."` where aid='$aid' ");
 -     }
 -     $dsql->ExecuteNoneQuery(" DELETE FROM `#@__archives` where id='$aid' ");
 -     $dsql->ExecuteNoneQuery("DELETE FROM `#@__feedback` where aid='$aid'");
 -     $dsql->ExecuteNoneQuery("DELETE FROM `#@__member_stow` where aid='$aid'");
 -     $dsql->ExecuteNoneQuery("DELETE FROM `#@__taglist ` where aid='$aid'");
 - 
 -     //删除HTML
 -     if ($arcRow['ismake'] == -1 || $arcRow['arcrank'] != 0 || $arcRow['typeid'] == 0 || $arcRow['money'] > 0) {
 -         return TRUE;
 -     }
 -     $arcurl = GetFileUrl(
 -         $arcRow['id'],
 -         $arcRow['typeid'],
 -         $arcRow['senddate'],
 -         $arcRow['title'],
 -         $arcRow['ismake'],
 -         $arcRow['arcrank'],
 -         $arcRow['namerule'],
 -         $arcRow['typedir'],
 -         $arcRow['money'],
 -         $arcRow['filename']
 -     );
 -     if (!preg_match("#\?#", $arcurl)) {
 -         $htmlfile = GetTruePath().str_replace($GLOBALS['cfg_basehost'], '', $arcurl);
 -         if (file_exists($htmlfile) && !is_dir($htmlfile)) {
 -             @unlink($htmlfile);
 -             $arcurls = explode(".", $htmlfile);
 -             $sname = $arcurls[count($arcurls) - 1];
 -             $fname = preg_replace("#(\.$sname)$#", "", $htmlfile);
 -             for ($i = 2; $i <= 100; $i++) {
 -                 $htmlfile = $fname."_$i".".".$sname;
 -                 if (file_exists($htmlfile) && !is_dir($htmlfile)) @unlink($htmlfile);
 -                 else break;
 -             }
 -         }
 -     }
 - 
 -     //删除文本文件
 -     $filenameh = DEDEDATA."/textdata/".(ceil($aid / 5000))."/{$aid}-".substr(md5($cfg_cookie_encode), 0, 16).".txt";
 -     if (is_file($filename)) @unlink($filename);
 -     return TRUE;
 - }
 - 
 - /**
 -  *  删除不带主表内容模型的数据
 -  *
 -  * @access    public
 -  * @param     int  $aid  文档ID
 -  * @return    string
 -  */
 - function DelArcSg($aid)
 - {
 -     global $dsql, $cfg_cookie_encode, $cfg_ml, $cfg_upload_switch, $cfg_medias_dir;
 -     $aid = intval($aid);
 - 
 -     //读取文档信息
 -     $arctitle = '';
 -     $arcurl = '';
 - 
 -     $arcQuery = "Select arc.id,arc.typeid,arc.senddate,arc.arcrank,ch.addtable,ch.nid,
 -         tp.typedir,tp.typename,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
 -           from `#@__arctiny` arc
 -           left join `#@__arctype` tp on tp.id=arc.typeid
 -           left join `#@__channeltype` ch on ch.id=arc.channel
 -         where arc.id='$aid' ";
 -     $arcRow = $dsql->GetOne($arcQuery);
 - 
 -     if (!is_array($arcRow)) {
 -         return FALSE;
 -     }
 - 
 -     //删除数据库的内容
 -     $dsql->ExecuteNoneQuery("DELETE FROM `#@__arctiny` where id='$aid' ");
 -     $dsql->ExecuteNoneQuery("DELETE FROM `".$arcRow['addtable']."` where aid='$aid' ");
 -     $dsql->ExecuteNoneQuery("DELETE FROM `#@__feedback` where aid='$aid'");
 -     $dsql->ExecuteNoneQuery("DELETE FROM `#@__member_stow` where aid='$aid'");
 -     $dsql->ExecuteNoneQuery("DELETE FROM `#@__taglist ` where aid='$aid'");
 - 
 -     //删除HTML
 -     if ($arcRow['arcrank'] != 0 || $arcRow['typeid'] == 0) {
 -         return TRUE;
 -     }
 -     $arcurl = GetFileUrl(
 -         $arcRow['id'],
 -         $arcRow['typeid'],
 -         $arcRow['senddate'],
 -         '',
 -         1,
 -         $arcRow['arcrank'],
 -         $arcRow['namerule'],
 -         $arcRow['typedir'],
 -         0,
 -         ''
 -     );
 -     if (!preg_match("#\?#", $arcurl)) {
 -         $htmlfile = GetTruePath().str_replace($GLOBALS['cfg_basehost'], '', $arcurl);
 -         if (file_exists($htmlfile) && !is_dir($htmlfile)) {
 -             @unlink($htmlfile);
 -             $arcurls = explode(".", $htmlfile);
 -             $sname = $arcurls[count($arcurls) - 1];
 -             $fname = preg_replace("#(\.$sname)$#", "", $htmlfile);
 -             for ($i = 2; $i <= 100; $i++) {
 -                 $htmlfile = $fname."_$i".".".$sname;
 -                 if (file_exists($htmlfile) && !is_dir($htmlfile)) @unlink($htmlfile);
 -                 else break;
 -             }
 -         }
 -     }
 -     //删除文本文件
 -     $filenameh = DEDEDATA."/textdata/".(ceil($aid / 5000))."/{$aid}-".substr(md5($cfg_cookie_encode), 0, 16).".txt";
 -     return TRUE;
 - }
 - 
 - /**
 -  *  获取真实路径
 -  *
 -  * @return    string
 -  */
 - function GetTruePath()
 - {
 -     $truepath = $GLOBALS["cfg_basedir"];
 -     return $truepath;
 - }
 
 
  |