".$fun_r['AdminInfo'].""; $count=count($r)-1; for($i=1;$i<$count;$i++) { $curl=$class_r[$r[$i]][islast]?"ListNews.php?classid=".$r[$i].$addcheck.$ecms_hashur['ehref']:"ListAllInfo.php?tbname=".$class_r[$r[$i]][tbname]."&classid=".$r[$i].$addcheck.$ecms_hashur['ehref']; $string.=" > ".$class_r[$r[$i]][classname].""; } return $string; } //加验证代码 function AddCheckViewCode(){ $code="if(!defined('InEmpireCMS')) { exit(); }"; return $code; } //加模板验证代码 function AddCheckViewTempCode(){ $code=""; return $code; } //后台分页 function page2($num,$line,$page_line,$start,$page,$search){ global $fun_r; if($num<=$line) { return ' '.$num.'   '; } $search=RepPostStr($search,1); $url=eReturnSelfPage(0).'?page'; $snum=2;//最小页数 $totalpage=ceil($num/$line);//取得总页数 $firststr=' '.$num.'   '; //上一页 if($page<>0) { $toppage=''.$fun_r['adminstartpage'].' '; $pagepr=$page-1; $prepage=''.$fun_r['adminpripage'].''; } //下一页 if($page!=$totalpage-1) { $pagenex=$page+1; $nextpage=' '.$fun_r['adminnextpage'].''; $lastpage=' '.$fun_r['adminlastpage'].''; } $starti=$page-$snum<0?0:$page-$snum; $no=0; for($i=$starti;$i<$totalpage&&$no<$page_line;$i++) { $no++; if($page==$i) { $is_1=""; $is_2=""; } else { $is_1=''; $is_2=""; } $pagenum=$i+1; $returnstr.=" ".$is_1.$pagenum.$is_2; } $returnstr=$firststr.$toppage.$prepage.$returnstr.$nextpage.$lastpage; return ''.$returnstr.''; } //后台分页 function postpage($num,$line,$page_line,$start,$page,$form){ global $fun_r; if($num<=$line) { return ''; } $snum=2;//最小页数 $totalpage=ceil($num/$line);//取得总页数 $firststr=' '.$num.'   '; //上一页 if($page<>0) { $toppage=''.$fun_r['adminstartpage'].' '; $pagepr=$page-1; $prepage=''.$fun_r['adminpripage'].''; } //下一页 if($page!=$totalpage-1) { $pagenex=$page+1; $nextpage=' '.$fun_r['adminnextpage'].''; $lastpage=' '.$fun_r['adminlastpage'].''; } $starti=$page-$snum<0?0:$page-$snum; $no=0; for($i=$starti;$i<$totalpage&&$no<$page_line;$i++) { $no++; if($page==$i) { $is_1=""; $is_2=""; } else { $is_1=''; $is_2=""; } $pagenum=$i+1; $returnstr.=" ".$is_1.$pagenum.$is_2; } $returnstr=$firststr.$toppage.$prepage.$returnstr.$nextpage.$lastpage; $returnstr.=""; return $returnstr; } //取得模型表名 function GetModTable($mid){ global $empire,$dbtbpre; $r=$empire->fetch1("select tid,tbname from {$dbtbpre}enewsmod where mid='$mid'"); return $r; } //建立专题目录 function CreateZtPath($ztpath){ $createpath=eReturnTrueEcmsPath().$ztpath; $mk=DoMkdir($createpath); $createfilepath=$createpath.'/uploadfile';//建立附件目录 $mk1=DoMkdir($createfilepath); } //建立栏目目录 function CreateClassPath($classpath){ $createpath=eReturnTrueEcmsPath().$classpath; $mk=DoMkdir($createpath); $createfilepath=eReturnTrueEcmsPath().'d/file/'.$classpath;//建立附件目录 $mk1=DoMkdir($createfilepath); } //建立标题分类目录 function CreateInfoTypePath($tpath){ $createpath=eReturnTrueEcmsPath().$tpath; $mk=DoMkdir($createpath); } //建立栏目目录 function FormatClassPath($classpath,$islast){ $r=explode("/",$classpath); $returnpath=""; for($i=0;$i0) { $returnpath.="/".$r[$i]; } else { $returnpath.=$r[$i]; } CreateClassPath($returnpath); } return $returnpath; } //自建目录 function eAutodo_eCreatePath($dotype,$classid,$ecms=0){ global $empire,$dbtbpre,$public_r,$class_r,$class_zr,$class_tr,$ecms_config; $classid=(int)$classid; $path=''; if($dotype=='cpage')//栏目 { if(!$class_r[$classid]['classpath']) { return ''; } $path=$class_r[$classid]['classpath']; $truepath=eReturnTrueEcmsPath().$path; if(file_exists($truepath)) { return ''; } $islast=$class_r[$classid]['islast']; FormatClassPath($path,$islast); } elseif($dotype=='zpage')//专题 { if(!$class_zr[$classid]['ztpath']) { return ''; } $path=$class_zr[$classid]['ztpath']; $truepath=eReturnTrueEcmsPath().$path; if(file_exists($truepath)) { return ''; } CreateZtPath($path); } elseif($dotype=='tpage')//标题分类 { if(!$class_tr[$classid]['tpath']) { return ''; } $path=$class_tr[$classid]['tpath']; $truepath=eReturnTrueEcmsPath().$path; if(file_exists($truepath)) { return ''; } CreateInfoTypePath($path); } else { return ''; } } //删除栏目缓存文件 function DelListEnews(){ $file=ECMS_PATH."e/data/fc/ListEnews.php"; DelFiletext($file); $file1=ECMS_PATH."e/data/fc/ListClass0.php"; DelFiletext($file1); $file2=ECMS_PATH."e/data/fc/ListClass1.php"; DelFiletext($file2); } //删除模板临时缓存文件 function DelOneTempTmpfile($classid){ $file=ECMS_PATH.'e/data/tmp/dt_temp'.$classid.'.php'; if(file_exists($file)) { DelFiletext($file); } } //替换php代码 function RepPhpAspJspcode($string){ global $public_r; if(!$public_r[candocode]){ //$string=str_replace("","\\>",$string); $string=str_replace("!i'),array('<script','</script>'),$string); } //$string=str_replace("[!--ecms.xml--]","","\\>",$string); $string=str_replace("!i'),array('<script','</script>'),$string); } //$string=str_replace("[!--ecms.xml--]","","<!--code.start-->",$string); $string=str_replace("","<!--code.end-->",$string); return $string; } //替换文件前缀 function RepFilenameQz($qz,$ecms=0){ if(empty($ecms)) { $qz=str_replace("/","",$qz); $qz=str_replace("\\","",$qz); } $qz=str_replace("#","",$qz); $qz=str_replace("&","",$qz); $qz=str_replace(":","",$qz); $qz=str_replace(";","",$qz); $qz=str_replace("<","",$qz); $qz=str_replace(">","",$qz); $qz=str_replace("?","",$qz); $qz=str_replace("*","",$qz); $qz=str_replace("%","",$qz); $qz=str_replace("|","",$qz); $qz=str_replace("\"","",$qz); $qz=str_replace("'","",$qz); $qz=str_replace(".","",$qz); return $qz; } //替换目录值 function RepPathStr($path){ $path=str_replace("\\","",$path); $path=str_replace("/","",$path); return $path; } //返回替换字符 function ReturnCheckDoRep(){ global $empire,$dbtbpre; //信息来源 $befrom=$empire->gettotal("select count(*) as total from {$dbtbpre}enewsbefrom"); //作者 $writer=$empire->gettotal("select count(*) as total from {$dbtbpre}enewswriter"); //替换字符 $words=$empire->gettotal("select count(*) as total from {$dbtbpre}enewswords"); //内容关键字 $key=$empire->gettotal("select count(*) as total from {$dbtbpre}enewskey"); $str=",$befrom,$writer,$words,$key,"; return $str; } //返回替换验证 function ReturnCheckDoRepStr(){ global $public_r; return explode(',',$public_r[checkdorepstr]); } //取得栏目目录名称 function GetPathname($classname){ $c=explode("/",$classname); $count=count($c)-1; $cr[0]=$c[$count];//栏目目录名 $len=strlen($cr[0]); //上级栏目目录名 $cr[1]=substr($classname,0,strlen($classname)-$len); return $cr; } //更新缓存 function ChangeEnewsData($userid,$username){ //操作权限 CheckLevel($userid,$username,$classid,"changedata"); //更新参数设置 GetConfig(1); //更新类别 GetClass(); //更新会员组 GetMemberLevel(); //更新全站搜索数据表 GetSearchAllTb(); //操作日志 insert_dolog(""); printerror("ChangeDataSuccess","history.go(-1)"); } //返回文件名 function ReturnPathFile($filename){ $fr=explode("/",$filename); $count=count($fr)-1; return $fr[$count]; } //返回栏目链接(无缓存) function sys_ReturnBqClassUrl($r){ global $public_r; //外部栏目 if($r[wburl]) { $classurl=$r[wburl]; } //动态列表 elseif($r['listdt']) { $rewriter=eReturnRewriteClassUrl($r['classid'],1); $classurl=$rewriter['pageurl']; } elseif($r['classurl']) { $classurl=$r['classurl']; } else { $classurl=$public_r['newsurl'].$r['classpath']."/"; } return $classurl; } //返回专题链接(无缓存) function sys_ReturnBqZtUrl($r){ global $public_r; if($r['zturl']) { $zturl=$r['zturl']; } else { $zturl=$public_r['newsurl'].$r['ztpath']."/"; } return $zturl; } //组合两数组 function TogTwoArray($r,$ra){ $returnr=array_merge($r,$ra); return $returnr; } //下载 function DownLoadFile($file,$filepath,$ecms=0){ if(empty($file)) { printerror("FileNotExist","history.go(-1)"); } if(!file_exists($filepath)) { printerror("FileNotExist",""); } $filesize=@filesize($filepath); //下载 Header("Content-type: application/octet-stream"); Header("Accept-Ranges: bytes"); Header("Accept-Length: ".$filesize); Header("Content-Disposition: attachment; filename=".$file); echo ReadFiletext($filepath); if($ecms==1) { DelFiletext($filepath); } } //下载内容 function DownLoadFileText($filetext,$filename){ if(empty($filetext)||empty($filename)) { return ''; } $filesize=strlen($filetext); //下载 Header("Content-type: application/octet-stream"); Header("Accept-Ranges: bytes"); Header("Accept-Length: ".$filesize); Header("Content-Disposition: attachment; filename=".$filename); echo $filetext; } //取得缓存文件内容 function GetFcfiletext($file){ $str1="document.write(\""; $str2="\");"; $text=ReadFiletext($file); $text=stripSlashes(str_replace($str2,"",str_replace($str1,"",$text))); return $text; } //验证模板组是否存在 function CheckTempGroup($gid){ global $empire,$dbtbpre; if(empty($gid)) { $gid=GetDoTempGid(); } $gid=(int)$gid; $r=$empire->fetch1("select gid,gname from {$dbtbpre}enewstempgroup where gid='$gid'"); if(empty($r['gid'])) { printerror("ErrorUrl",""); } return $r['gname']; } //附加隐藏表单项 function ReturnFormHidden($vname,$value){ $value=ehtmlspecialchars(ClearAddsData($value)); return ""; } //验证多选上传插件是否开启 function TranmoreIsOpen($ecms='addinfo'){ $open=0; $file='ecmseditor/tranmore/tranmore.php'; if($ecms=='addinfo') { $file='ecmseditor/tranmore/tranmore.php'; } elseif($ecms=='editor') { $file='../tranmore/tranmore.php'; } elseif($ecms=='filemain') { $file='tranmore/tranmore.php'; } if(file_exists($file)) { $open=1; } return $open; } //-------------- 信息处理区 ---------------------- //替换关键字 function ReplaceKey($newstext,$classid=0){ global $empire,$dbtbpre,$public_r,$class_r; if(empty($newstext)||$class_r[$classid]['keycid']==-1) {return $newstext;} $where=''; if(!empty($class_r[$classid]['keycid'])) { $where=" where cid='".$class_r[$classid]['keycid']."'"; } $sql=$empire->query("select keyname,keyurl from {$dbtbpre}enewskey".$where); while($r=$empire->fetch($sql)) { if(STR_IREPLACE) { $newstext=empty($public_r[repkeynum])?str_ireplace($r[keyname],''.$r[keyname].'',$newstext):preg_replace('/'.$r[keyname].'/i',''.$r[keyname].'',$newstext,$public_r[repkeynum]); } else { $newstext=empty($public_r[repkeynum])?str_replace($r[keyname],''.$r[keyname].'',$newstext):preg_replace('/'.$r[keyname].'/i',''.$r[keyname].'',$newstext,$public_r[repkeynum]); } } return $newstext; } //替换禁用字符 function ReplaceWord($newstext){ global $empire,$dbtbpre; if(empty($newstext)) {return $newstext;} $sql=$empire->query("select newword,oldword from {$dbtbpre}enewswords"); while($r=$empire->fetch($sql)) { $newstext=str_replace($r[oldword],$r[newword],$newstext); } return $newstext; } //编辑信息时替换关键字和过滤字符 function DoReplaceKeyAndWord($newstext,$dokey,$classid=0){ global $public_r; $docheckrep=ReturnCheckDoRepStr();//返回替换验证字符 if($public_r['dorepword']==1&&$docheckrep[3])//过滤字符 { $newstext=ReplaceWord($newstext); } if($public_r['dorepkey']==1&&$docheckrep[4]&&!empty($dokey))//内容关键字 { $newstext=ReplaceKey($newstext,$classid); } return $newstext; } //重命名列表文件 function RenameListfile($classid,$lencord,$num,$type,$newtype,$classpath){ $page=ceil($num/$lencord); for($j=1;$j<=$page;$j++) { if($j==1) { $listfile=ECMS_PATH.$classpath."/index"; } else { $listfile=ECMS_PATH.$classpath."/index_".$j; } @rename($listfile.$type,$listfile.$newtype); } } //验证是否有设置头条级别权限 function eFirstTitleCheckLevel($levelid,$ttype=0){ global $empire,$dbtbpre,$lur,$classid,$class_r; $levelid=(int)$levelid; $ttype=(int)$ttype; if(!$levelid) { return 1; } $r=$empire->fetch1("select tid,groupid from {$dbtbpre}enewsgoodtype where levelid='$levelid' and ttype='$ttype' limit 1"); if(!$r['tid']) { return 0; } if($r['groupid']) { if(!strstr($r['groupid'],','.$lur['groupid'].',')) { return 0; } } return 1; } //组合标题属性 function TitleFont($titlefont,$titlecolor=''){ $add=$titlecolor.','; if($titlecolor=='no') { $add=''; } if($titlefont[b])//粗体 {$add.='b|';} if($titlefont[i])//斜体 {$add.='i|';} if($titlefont[s])//删除线 {$add.='s|';} if($add==',') { $add=''; } return $add; } //单信息加入专题 function AddInfoToZt($ztid,$zcid,$classid,$id,$newstime,$isgood=0,$ecms=0){ global $empire,$dbtbpre,$class_r; if($ecms==1)//检查是否增加过 { $infor=$empire->fetch1("select zid,ztid,cid from {$dbtbpre}enewsztinfo where ztid='$ztid' and classid='$classid' and id='$id' limit 1"); if($infor['ztid']) { if($infor['cid']!=$zcid) { $empire->query("update {$dbtbpre}enewsztinfo set cid='$zcid',newstime='$newstime' where zid='$infor[zid]' limit 1"); } } else { $mid=$class_r[$classid]['modid']; $empire->query("insert into {$dbtbpre}enewsztinfo(ztid,cid,classid,id,newstime,mid,isgood) values('$ztid','$zcid','$classid','$id','$newstime','$mid','$isgood');"); } } else { $mid=$class_r[$classid]['modid']; $empire->query("insert into {$dbtbpre}enewsztinfo(ztid,cid,classid,id,newstime,mid,isgood) values('$ztid','$zcid','$classid','$id','$newstime','$mid','$isgood');"); } } //多信息加入专题 function AddMoreInfoToZt($ztid,$zcid,$tbname,$where,$ecms=0){ global $empire,$dbtbpre,$class_r; if(empty($where)) { return ''; } $sql=$empire->query("select id,classid,newstime from {$dbtbpre}ecms_".$tbname.($ecms==0?'':'_index')." where ".$where); while($r=$empire->fetch($sql)) { $zinfor=$empire->fetch1("select zid,ztid,cid from {$dbtbpre}enewsztinfo where ztid='$ztid' and classid='$r[classid]' and id='$r[id]' limit 1"); if($zinfor['ztid']) { if($zinfor['cid']!=$zcid) { $empire->query("update {$dbtbpre}enewsztinfo set cid='$zcid' where zid='$zinfor[zid]' limit 1"); } } else { $mid=$class_r[$r[classid]]['modid']; $empire->query("insert into {$dbtbpre}enewsztinfo(ztid,cid,classid,id,newstime,mid,isgood) values('$ztid','$zcid','$r[classid]','$r[id]','$r[newstime]','$mid','0');"); } } } //加入专题 function InsertZtInfo($ztids,$zcids,$oldztids,$oldzcids,$classid,$id,$newstime){ global $empire,$dbtbpre,$class_r; if($zcids==$oldzcids) { return ''; } $haveztids=''; $dh=''; //加入专题分类 if($zcids) { $r=explode(',',$zcids); $count=count($r); for($i=0;$i<$count;$i++) { $cid=(int)$r[$i]; if(!$cid) { continue; } if($cid<0) { $thisztid=abs($cid); $cid=0; } else { $zcr=$empire->fetch1("select ztid from {$dbtbpre}enewszttype where cid='$cid' limit 1"); if(!$zcr['ztid']) { continue; } $thisztid=$zcr['ztid']; } AddInfoToZt($thisztid,$cid,$classid,$id,$newstime,0,1); $haveztids.=$dh.$thisztid; $dh=','; } } //清理没选专题 if($oldztids) { $dr=explode(',',$oldztids); $dcount=count($dr); for($di=0;$di<$dcount;$di++) { $dztid=(int)$dr[$di]; if(!$dztid||strstr(','.$haveztids.',',','.$dztid.',')) { continue; } $empire->query("delete from {$dbtbpre}enewsztinfo where ztid='$dztid' and classid='$classid' and id='$id'"); } } } //取消加入专题 function DelZtInfo($where){ global $empire,$dbtbpre,$class_r; if(!$where) { return ''; } $empire->query("delete from {$dbtbpre}enewsztinfo where ".$where); } //信息送审 function InfoInsertToWorkflow($id,$classid,$wfid,$userid,$username){ global $empire,$dbtbpre,$class_r; $wfitemr=$empire->fetch1("select tid,tno,groupid,userclass,username,tstatus from {$dbtbpre}enewsworkflowitem where wfid='$wfid' order by tno limit 1"); //状态更新 $empire->query("insert into {$dbtbpre}enewswfinfo(id,classid,wfid,tid,groupid,userclass,username,checknum,tstatus,checktno) values('$id','$classid','$wfid','$wfitemr[tid]','$wfitemr[groupid]','$wfitemr[userclass]','$wfitemr[username]',1,'$wfitemr[tstatus]',0);"); //日志 InsertWfLog($classid,$id,$wfid,0,$username,'',1,0); } //信息返工送审 function InfoUpdateToWorkflow($id,$classid,$wfid,$userid,$username){ global $empire,$dbtbpre,$class_r; $wfinfor=$empire->fetch1("select checknum,wfid,tid,checktno from {$dbtbpre}enewswfinfo where id='$id' and classid='$classid' limit 1"); if($wfinfor[checktno]!='101') { return ''; } if($wfinfor[tid]) { $ywfitemr=$empire->fetch1("select tno from {$dbtbpre}enewsworkflowitem where tid='$wfinfor[tid]'"); $wfitemr=$empire->fetch1("select tid,tno,groupid,userclass,username,tstatus from {$dbtbpre}enewsworkflowitem where wfid='$wfinfor[wfid]' and tno>$ywfitemr[tno] order by tno limit 1"); } else { $wfitemr=$empire->fetch1("select tid,tno,groupid,userclass,username,tstatus from {$dbtbpre}enewsworkflowitem where wfid='$wfinfor[wfid]' order by tno limit 1"); } //状态更新 $empire->query("update {$dbtbpre}enewswfinfo set tid='$wfitemr[tid]',groupid='$wfitemr[groupid]',userclass='$wfitemr[userclass]',username='$wfitemr[username]',checknum=checknum+1,tstatus='$wfitemr[tstatus]',checktno='0' where id='$id' and classid='$classid' limit 1"); //日志 InsertWfLog($classid,$id,$wfinfor[wfid],0,$username,'',$wfinfor[checknum],0); } //写入签发日志 function InsertWfLog($classid,$id,$wfid,$tid,$username,$checktext,$checknum,$checktype){ global $empire,$dbtbpre,$class_r,$lur; $checktime=time(); $checktext=RepPostStr($checktext); $empire->query("insert into {$dbtbpre}enewswfinfolog(id,classid,wfid,tid,username,checktime,checktext,checknum,checktype) values('$id','$classid','$wfid','$tid','$username','$checktime','$checktext','$checknum','$checktype');"); } //返回是否签发 function EcmsReturnDoIsqf($userid,$username,$ugroupid,$ecms=0){ global $empire,$public_r,$dbtbpre,$emod_r,$lur; $ugroupid=(int)$ugroupid; $ugr=ReturnLeftLevel($ugroupid); $qf=$ugr['doisqf']?1:0; return $qf; } //加入TAG表 function eInsertTags($tags,$classid,$id,$newstime){ global $empire,$dbtbpre,$class_r; if(!trim($tags)) { return ''; } $tags=RepPostVar($tags); $classid=(int)$classid; $id=(int)$id; $mid=(int)$class_r[$classid][modid]; $tr=explode(',',$tags); $count=count($tr); for($i=0;$i<$count;$i++) { $tagname=$tr[$i]; if(empty($tagname)) { continue; } $r=$empire->fetch1("select tagid from {$dbtbpre}enewstags where tagname='$tagname' limit 1"); if($r[tagid]) { $datar=$empire->fetch1("select tagid,classid,newstime from {$dbtbpre}enewstagsdata where tagid='$r[tagid]' and id='$id' and mid='$mid' limit 1"); if($datar[tagid]) { if($datar[classid]!=$classid||$datar[newstime]!=$newstime) { $empire->query("update {$dbtbpre}enewstagsdata set classid='$classid',newstime='$newstime' where tagid='$r[tagid]' and id='$id' and mid='$mid' limit 1"); } } else { $empire->query("update {$dbtbpre}enewstags set num=num+1 where tagid='$r[tagid]'"); $empire->query("insert into {$dbtbpre}enewstagsdata(tagid,classid,id,newstime,mid) values('$r[tagid]','$classid','$id','$newstime','$mid');"); } } else { $empire->query("insert into {$dbtbpre}enewstags(tagname,num,isgood,cid) values('$tagname',1,0,0);"); $tagid=$empire->lastid(); $empire->query("insert into {$dbtbpre}enewstagsdata(tagid,classid,id,newstime,mid) values('$tagid','$classid','$id','$newstime','$mid');"); } } } //返回信息TAGS function eReturnInfoTags($classid,$id,$mid){ global $empire,$dbtbpre,$class_r; if(!$mid||!$id) { return ''; } $tags=''; $dh=''; $sql=$empire->query("select tagid from {$dbtbpre}enewstagsdata where id='$id' and mid='$mid' order by tagid"); while($r=$empire->fetch($sql)) { $tr=$empire->fetch1("select tagname from {$dbtbpre}enewstags where tagid='$r[tagid]'"); $tags.=$dh.$tr[tagname]; $dh=','; } return $tags; } //未审核表信息转换 function MoveCheckInfoData($tbname,$checked,$stb,$where){ global $empire,$dbtbpre; if(empty($checked)) { $ytbname=$dbtbpre.'ecms_'.$tbname.'_check'; $ydatatbname=$dbtbpre.'ecms_'.$tbname.'_check_data'; $ntbname=$dbtbpre.'ecms_'.$tbname; $ndatatbname=$dbtbpre.'ecms_'.$tbname.'_data_'.$stb; } else { $ytbname=$dbtbpre.'ecms_'.$tbname; $ydatatbname=$dbtbpre.'ecms_'.$tbname.'_data_'.$stb; $ntbname=$dbtbpre.'ecms_'.$tbname.'_check'; $ndatatbname=$dbtbpre.'ecms_'.$tbname.'_check_data'; } $empire->query("replace into ".$ntbname." select * from ".$ytbname." where ".$where); $empire->query("replace into ".$ndatatbname." select * from ".$ydatatbname." where ".$where); //删除原表 $empire->query("delete from ".$ytbname." where ".$where); $empire->query("delete from ".$ydatatbname." where ".$where); } //更新副表字段内容 function UpdateAllDataTbField($tbname,$update,$where,$upcheck=1,$updoc=1){ global $empire,$dbtbpre; //已审核 $tbr=$empire->fetch1("select datatbs from {$dbtbpre}enewstable where tbname='$tbname' limit 1"); if($tbr['datatbs']) { $dtbr=explode(',',$tbr['datatbs']); $count=count($dtbr); for($i=1;$i<$count-1;$i++) { $empire->query("update {$dbtbpre}ecms_".$tbname."_data_".$dtbr[$i]." set ".$update.$where); } } //未审核 if($upcheck==1) { $empire->query("update {$dbtbpre}ecms_".$tbname."_check_data set ".$update.$where); } //归档 if($updoc==1) { $empire->query("update {$dbtbpre}ecms_".$tbname."_doc_data set ".$update.$where); } } //删除副表信息(批量) function DelAllDataTbInfo($tbname,$where,$delcheck=1,$deldoc=1){ global $empire,$dbtbpre; if(empty($where)) { return ''; } //已审核 $tbr=$empire->fetch1("select datatbs from {$dbtbpre}enewstable where tbname='$tbname' limit 1"); if($tbr['datatbs']) { $dtbr=explode(',',$tbr['datatbs']); $count=count($dtbr); for($i=1;$i<$count-1;$i++) { $empire->query("delete from {$dbtbpre}ecms_".$tbname."_data_".$dtbr[$i]." where ".$where); } } //未审核 if($delcheck==1) { $empire->query("delete from {$dbtbpre}ecms_".$tbname."_check_data where ".$where); } //归档 if($deldoc==1) { $empire->query("delete from {$dbtbpre}ecms_".$tbname."_doc_data where ".$where); } } //返回命名方式 function ReturnInfoFilename($classid,$id,$filenameqz){ global $class_r; if($class_r[$classid][filename]==1) //time命名 { $filename=$class_r[$classid][filename_qz].time().$id; } elseif($class_r[$classid][filename]==2) //md5命名 { $filename=$class_r[$classid][filename_qz].md5(uniqid(microtime()).$id); } elseif($class_r[$classid][filename]==3) //目录 { $filename=$class_r[$classid][filename_qz].$id.'/index'; } elseif($class_r[$classid][filename]==4) //date命名 { $filename=$class_r[$classid][filename_qz].date('Ymd').$id; } elseif($class_r[$classid][filename]==5) //公共信息ID { $filename=$class_r[$classid][filename_qz].ReturnInfoPubid($classid,$id); } else //id { $filename=$class_r[$classid][filename_qz].$id; } $filename=$filenameqz.$filename; return $filename; } //删除其他相关附件 function DelFileOtherTable($where,$tb='other'){ global $empire,$dbtbpre,$public_r; if(empty($where)) { return ''; } //删除附件 $filesql=$empire->query("select filename,path,modtype,fpath from {$dbtbpre}enewsfile_{$tb} where ".$where); while($filer=$empire->fetch($filesql)) { DoDelFile($filer); } $empire->query("delete from {$dbtbpre}enewsfile_{$tb} where ".$where); } //按条件删除信息附件 function DelFileAllTable($where){ global $empire,$dbtbpre,$public_r; if(empty($where)) { return ''; } if($public_r['filedatatbs']) { $dtbr=explode(',',$public_r['filedatatbs']); $count=count($dtbr); for($i=1;$i<$count-1;$i++) { //删除附件 $filesql=$empire->query("select filename,path,classid,fpath from {$dbtbpre}enewsfile_".$dtbr[$i]." where ".$where); while($filer=$empire->fetch($filesql)) { DoDelFile($filer); } $empire->query("delete from {$dbtbpre}enewsfile_".$dtbr[$i]." where ".$where); } } } //按条件删除信息评论 function DelPlAllTable($where){ global $empire,$dbtbpre,$public_r; if(empty($where)) { return ''; } if($public_r['pldatatbs']) { $pldtbr=explode(',',$public_r['pldatatbs']); $count=count($pldtbr)-1; for($i=1;$i<$count;$i++) { $empire->query("delete from {$dbtbpre}enewspl_".$pldtbr[$i]." where ".$where); } } } //更新相应的附件 function UpdateTheFile($id,$checkpass,$classid,$fstb=1){ global $empire,$dbtbpre; if(empty($id)||empty($checkpass)) { return ""; } $id=(int)$id; $checkpass=(int)$checkpass; $classid=(int)$classid; $pubid=ReturnInfoPubid($classid,$id); $sql=$empire->query("update {$dbtbpre}enewsfile_{$fstb} set pubid='$pubid',classid='$classid',id='$id',cjid=0 where cjid='$checkpass'"); } //修改时更新附件 function UpdateTheFileEdit($classid,$id,$fstb=1){ global $empire,$dbtbpre; $pubid=ReturnInfoPubid($classid,$id); $sql=$empire->query("update {$dbtbpre}enewsfile_{$fstb} set pubid='$pubid',cjid=0 where id='$id' and classid='$classid'"); } //获取信息分表 function GetInfoTranFstb($classid,$id,$fstb){ global $empire,$dbtbpre,$public_r,$class_r; if($id) { $classid=(int)$classid; $id=(int)$id; if(!$classid||!$class_r[$classid]['tbname']) { return $public_r['filedeftb']; } $index_r=$empire->fetch1("select id,classid,checked from {$dbtbpre}ecms_".$class_r[$classid]['tbname']."_index where id='$id' limit 1"); if(!$index_r['id']) { return $public_r['filedeftb']; } //主表 $infotb=ReturnInfoMainTbname($class_r[$classid]['tbname'],$index_r['checked']);//返回表 $infor=$empire->fetch1("select fstb from ".$infotb." where id='$id' limit 1"); $fstb=$infor['fstb']; } elseif($fstb) { $fstb=eReturnFileStb($fstb); } else { $fstb=$public_r['filedeftb']; } $fstb=(int)$fstb; return $fstb; } //更新ispic标识 function UpdateTheIspic($classid,$id,$checked){ global $empire,$dbtbpre,$class_r; $infotb=empty($checked)?$dbtbpre.'ecms_'.$class_r[$classid][tbname].'_check':$dbtbpre.'ecms_'.$class_r[$classid][tbname]; $r=$empire->fetch1("select titlepic,ispic from ".$infotb." where id='$id' limit 1"); $ispic=$r['titlepic']?1:0; if($ispic<>$r['ispic']) { $empire->query("update ".$infotb." set ispic='$ispic' where id='$id'"); } } //取第几张图片 function GetFpicToTpic($classid,$id,$num=1,$getfirsttitlespic=0,$swidth=0,$sheight=0,$fstb=1){ global $empire,$dbtbpre,$public_r,$class_r,$loginin,$logininid; $pubid=ReturnInfoPubid($classid,$id); $num=(int)$num; $num=$num-1; if($num<0) { return ''; } $logininid=(int)$logininid; $loginin=RepPostVar($loginin); $picr=$empire->fetch1("select fileid,filename,path,id,classid,no,fpath from {$dbtbpre}enewsfile_{$fstb} where pubid='$pubid' and type=1 order by fileid limit $num,1"); $firsttitlepic=""; if($picr['fileid']) { $rpath=$picr['path']?$picr['path'].'/':$picr['path']; $fspath=ReturnFileSavePath($picr[classid],$picr[fpath]); if($getfirsttitlespic==1&&$swidth&&$sheight)//缩略图 { $path=eReturnEcmsMainPortPath().$fspath['filepath'].$rpath;//moreport $yname=$path.$picr[filename]; $filetype=GetFiletype($picr[filename]); $insertfile=substr($picr[filename],0,strlen($picr[filename])-strlen($filetype)).time(); $name=$path."small".$insertfile; $sfiler=GetMySmallImg($classid,$picr[no],$insertfile,$picr[path],$yname,$swidth,$sheight,$name,$id,$add['filepass'],$logininid,$loginin,0,$fstb); $firsttitlepic=$fspath['fileurl'].$rpath."small".$insertfile.$sfiler['filetype']; } else { $firsttitlepic=$fspath['fileurl'].$rpath.$picr[filename]; } } return $firsttitlepic; } //更新替换图片下一页链接内容 function UpdateImgNexturl($classid,$id,$checked=1){ global $empire,$dbtbpre,$class_r,$public_r,$emod_r; $mid=$class_r[$classid][modid]; $tbname=$class_r[$classid][tbname]; $pf=$emod_r[$mid]['pagef']; $stf=$emod_r[$mid]['savetxtf']; if(!$pf) { return ''; } $infotbname=$checked?$dbtbpre.'ecms_'.$tbname:$dbtbpre.'ecms_'.$tbname.'_check'; //分页字段 $tbdataf=strstr($emod_r[$mid]['tbdataf'],','.$pf.',')?1:0; if($tbdataf) { $r=$empire->fetch1("select id,classid,titleurl,groupid,newspath,filename,stb from ".$infotbname." where id='$id'"); $infodatatbname=$checked?$dbtbpre.'ecms_'.$tbname.'_data_'.$r[stb]:$dbtbpre.'ecms_'.$tbname.'_check_data'; $finfor=$empire->fetch1("select ".$pf." from ".$infodatatbname." where id='$id'"); $r[$pf]=$finfor[$pf]; } else { $r=$empire->fetch1("select id,classid,titleurl,groupid,newspath,filename,".$pf." from ".$infotbname." where id='$id'"); } //存文本 if($stf&&$stf==$pf) { $newstextfile=$r[$stf]; $r[$stf]=GetTxtFieldText($r[$stf]); } if(!$r[$pf]) { return ''; } $newstext=RepNewstextImgLink($r[$pf],$r); if(empty($newstext)) { return ''; } //存文本 if($stf&&$stf==$pf) { EditTxtFieldText($newstextfile,$newstext); return ''; } if($tbdataf) { $empire->query("update ".$infodatatbname." set ".$pf."='$newstext' where id='$id'"); } else { $empire->query("update ".$infotbname." set ".$pf."='$newstext' where id='$id'"); } } //给图片加下一页链接 function RepNewstextImgLink($newstext,$add){ global $public_r; $expage='[!--empirenews.page--]';//分页符 if(!stristr($newstext,$expage)||!stristr($newstext,'fetch1("select sonclass from {$dbtbpre}enewsmod where mid='".$class_r[$classid][modid]."'"); $where=" and (".ReturnClass($mr[sonclass]).")"; } //优化 $tbname=$class_r[$classid][tbname]; $yhvar='otherlink'; $yhid=$etable_r[$tbname][yhid]; $yhadd=''; if($yhid) { $yhadd=ReturnYhSql($yhid,$yhvar,1); } //ID声名 $keyid=""; $first=0; $key_sql=$empire->query("select id from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$yhadd.$add.$where." and id<>$id order by newstime desc limit $link_num"); while($link_r=$empire->fetch($key_sql)) { if(empty($first)) { $dh=""; $first=1; } else { $dh=","; } $keyid.=$dh.$link_r[id]; } } else { $keyid=""; } return $keyid; } //删除信息存文本文件 function DelInfoSaveTxtfile($mid,$tbname,$where){ global $empire,$dbtbpre,$public_r,$class_r,$emod_r; if(empty($where)) { return ''; } $savetxtf=$emod_r[$mid]['savetxtf']; if($savetxtf) { //已审核 $txtsql=$empire->query("select ".$savetxtf." from {$dbtbpre}ecms_".$tbname." where ".$where); while($txtr=$empire->fetch($txtsql)) { $newstextfile=$txtr[$savetxtf]; //$txtr[$savetxtf]=GetTxtFieldText($txtr[$savetxtf]); DelTxtFieldText($newstextfile);//删除文件 } //未审核 $txtsql=$empire->query("select ".$savetxtf." from {$dbtbpre}ecms_".$tbname."_check where ".$where); while($txtr=$empire->fetch($txtsql)) { $newstextfile=$txtr[$savetxtf]; //$txtr[$savetxtf]=GetTxtFieldText($txtr[$savetxtf]); DelTxtFieldText($newstextfile);//删除文件 } //归档 $txtsql=$empire->query("select ".$savetxtf." from {$dbtbpre}ecms_".$tbname."_doc where ".$where); while($txtr=$empire->fetch($txtsql)) { $newstextfile=$txtr[$savetxtf]; //$txtr[$savetxtf]=GetTxtFieldText($txtr[$savetxtf]); DelTxtFieldText($newstextfile);//删除文件 } } } //删除信息相关记录 function DelSingleInfoOtherData($classid,$id,$r,$delfile=0,$delpl=0){ global $empire,$dbtbpre,$public_r,$class_r,$emod_r; $pubid=ReturnInfoPubid($classid,$id); //删除其它表记录 $empire->query("delete from {$dbtbpre}enewswfinfo where id='$id' and classid='$classid'"); $empire->query("delete from {$dbtbpre}enewswfinfolog where id='$id' and classid='$classid'"); $empire->query("delete from {$dbtbpre}enewsinfovote where pubid='$pubid'"); $empire->query("delete from {$dbtbpre}enewsdiggips where id='$id' and classid='$classid'"); $empire->query("delete from {$dbtbpre}enewsztinfo where id='$id' and classid='$classid'"); if($delfile==0) { DelNewsTheFile($id,$classid,$r['fstb'],$delpl,$r['restb']);//删除附件 } } //删除信息相关记录(整栏目) function DelMoreInfoOtherData($classid,$delfile=0,$delpl=0){ global $empire,$dbtbpre,$public_r,$class_r,$emod_r; //删除其它表记录 $empire->query("delete from {$dbtbpre}enewswfinfo where classid='$classid'"); $empire->query("delete from {$dbtbpre}enewswfinfolog where classid='$classid'"); $empire->query("delete from {$dbtbpre}enewsinfovote where classid='$classid'"); $empire->query("delete from {$dbtbpre}enewsdiggips where classid='$classid'"); $empire->query("delete from {$dbtbpre}enewsztinfo where classid='$classid'"); //附件 if($delfile==0) { DelFileAllTable("classid='$classid'"); } //评论 if($delpl==0) { DelPlAllTable("classid='$classid'"); } } //更新信息相关记录 function UpdateSingleInfoOtherData($classid,$id,$to_classid,$r,$updatefile=0,$updatepl=0){ global $empire,$dbtbpre,$public_r,$class_r,$emod_r; $pubid=ReturnInfoPubid($classid,$id); //更新其它表记录 $empire->query("update {$dbtbpre}enewswfinfo set classid='$to_classid' where id='$id' and classid='$classid'"); $empire->query("update {$dbtbpre}enewswfinfolog set classid='$to_classid' where id='$id' and classid='$classid'"); $empire->query("update {$dbtbpre}enewsinfovote set classid='$to_classid' where pubid='$pubid'"); $empire->query("update {$dbtbpre}enewsdiggips set classid='$to_classid' where id='$id' and classid='$classid'"); $empire->query("update {$dbtbpre}enewsztinfo set classid='$to_classid' where id='$id' and classid='$classid'"); //附件 if($updatefile==0) { $empire->query("update {$dbtbpre}enewsfile_".$r['fstb']." set classid='$to_classid' where pubid='$pubid'"); } //评论 if($updatepl==0) { $empire->query("update {$dbtbpre}enewspl_".$r['restb']." set classid='$to_classid' where pubid='$pubid'"); } } //更新信息相关记录(整栏目) function UpdateMoreInfoOtherData($classid,$to_classid,$updatefile=0,$updatepl=0){ global $empire,$dbtbpre,$public_r,$class_r,$emod_r; //更新其它表记录 $empire->query("update {$dbtbpre}enewswfinfo set classid='$to_classid' where classid='$classid'"); $empire->query("update {$dbtbpre}enewswfinfolog set classid='$to_classid' where classid='$classid'"); $empire->query("update {$dbtbpre}enewsinfovote set classid='$to_classid' where classid='$classid'"); $empire->query("update {$dbtbpre}enewsdiggips set classid='$to_classid' where classid='$classid'"); $empire->query("update {$dbtbpre}enewsztinfo set classid='$to_classid' where classid='$classid'"); //附件 if($updatefile==0) { if($public_r['filedatatbs']) { $dtbr=explode(',',$public_r['filedatatbs']); $count=count($dtbr); for($i=1;$i<$count-1;$i++) { $empire->query("update {$dbtbpre}enewsfile_".$dtbr[$i]." set classid='$to_classid' where classid='$classid'"); } } } //评论 if($updatepl==0) { if($public_r['pldatatbs']) { $pldtbr=explode(',',$public_r['pldatatbs']); $count=count($pldtbr)-1; for($i=1;$i<$count;$i++) { $empire->query("update {$dbtbpre}enewspl_".$pldtbr[$i]." set classid='$to_classid' where classid='$classid'"); } } } } //删除信息附件 function DelNewsTheFile($id,$classid,$fstb='1',$delpl=0,$restb='1'){ global $empire,$dbtbpre; if(empty($id)) { return ""; } $pubid=ReturnInfoPubid($classid,$id); $i=0; $sql=$empire->query("select classid,filename,path,fpath from {$dbtbpre}enewsfile_{$fstb} where pubid='$pubid'"); while($r=$empire->fetch($sql)) { $i=1; DoDelFile($r); } if($i) { $empire->query("delete from {$dbtbpre}enewsfile_{$fstb} where pubid='$pubid'"); } //删除评论 if($delpl==0) { $empire->query("delete from {$dbtbpre}enewspl_{$restb} where pubid='$pubid'"); } } //删除信息文件 function DelNewsFile($filename,$newspath,$classid,$newstext,$groupid=0){ global $class_r,$addgethtmlpath; if(!trim($filename)||!$classid||!$class_r[$classid][classpath]) { return ''; } if(strstr($filename,'/')) { $etfilename=ReturnInfoSPath($filename); if(!trim($etfilename)||strstr($etfilename,'/')) { return ''; } } //文件类型 if($groupid) { $filetype=".php"; } else { $filetype=$class_r[$classid][filetype]; } //是否有日期目录 if(empty($newspath)) { $mynewspath=""; } else { $mynewspath=$newspath."/"; } $iclasspath=ReturnSaveInfoPath($classid,$id); $r=explode("[!--empirenews.page--]",$newstext); $pagecount=count($r); for($i=1;$i<=$pagecount;$i++) { if(strstr($filename,'/')) { DelPath(eReturnTrueEcmsPath().$iclasspath.$mynewspath.ReturnInfoSPath($filename)); break; } else { if($i==1) { $file=eReturnTrueEcmsPath().$iclasspath.$mynewspath.$filename.$filetype; } else { $file=eReturnTrueEcmsPath().$iclasspath.$mynewspath.$filename."_".$i.$filetype; } DelFiletext($file); } } //moreportdo if($filename) { if(strstr($filename,'/')) { $eautodofile=$iclasspath.$mynewspath.ReturnInfoSPath($filename); $eautodofname='delpath|'.$eautodofile.'||'; eAutodo_AddDo('eDelFileInfo',0,0,0,0,0,$eautodofname); } else { $eautodofile=$iclasspath.$mynewspath.$filename; $eautodofname='delfile|'.$eautodofile.'|'.$filetype.'|'.$pagecount; eAutodo_AddDo('eDelFileInfo',0,0,0,0,0,$eautodofname); } } } //删除专题子类列表文件 function DelZtcFile($cid,$cr){ global $empire,$dbtbpre,$class_zr; //$cr=$empire->fetch1("select ztid,islist,maxnum,tnum,ttype,tfile from {$dbtbpre}enewszttype where cid='$cid'"); if(!$cr['ztid']) { return ''; } //文件类型 $filetype=$cr['ttype']; $tfile=$cr['tfile']; $doclasspath=ReturnSaveZtPath($cr['ztid'],0); $dopath=ECMS_PATH.$doclasspath."/"; //单页 if($cr['islist']!=1) { $file=$dopath.$tfile.$filetype; DelFiletext($file); //moreportdo if($tfile) { $eautodofile=$doclasspath."/".$tfile.$filetype; $eautodofname='delfile|'.$eautodofile.'||'; eAutodo_AddDo('eDelFileZTC',0,0,0,0,0,$eautodofname); } return ''; } //数量 $num=$empire->gettotal("select count(*) as total from {$dbtbpre}enewsztinfo where cid='$cid'"); if(!$num) { $num=1; } $totalpage=ceil($num/$cr['tnum']); for($i=1;$i<=$totalpage;$i++) { if($i==1) { $file=$dopath.$tfile.$filetype; } else { $file=$dopath.$tfile.'_'.$i.$filetype; } DelFiletext($file); } //moreportdo if($tfile) { $eautodofile=$doclasspath."/".$tfile; $eautodofname='delfile|'.$eautodofile.'|'.$filetype.'|'.$totalpage; eAutodo_AddDo('eDelFileZTC',0,0,0,0,0,$eautodofname); } } //替换图片标签 function RepImg($text,$copyflash){ global $ecms_config; $exp1="[--copyimg--]"; $exp2="[/--copyimg--]"; //去掉图片链接 if($ecms_config['sets']['saveurlimgclearurl']==1) { $zz2="/\<(a|A) (.*?)(href|Href)=('|\"|\\\\\"|)(.+?)><(img|IMG) (.*?)(src|SRC)=('|\"|\\\\\"|)(.+?)(\.jpg|\.JPG|\.gif|\.GIF|\.png|\.PNG|\.bmp|\.BMP|\.jpeg|\.JPEG)(.*?)><\/(a|A)>/is"; $text=preg_replace($zz2,"<\\6 \\7\\8=\\9\\10\\11\\12>",$text); } $zz1="/\<(img|IMG) (.*?)(src|SRC)=('|\"|\\\\\"|)(.+?)(\.jpg|\.JPG|\.gif|\.GIF|\.png|\.PNG|\.bmp|\.BMP|\.jpeg|\.JPEG)(.*?)>/is"; $text=preg_replace($zz1,"<\\1 \\2\\3=\\4".$exp1."\\5\\6".$exp2."\\7>",$text); return $text; } //替换flash标签 function RepFlash($text,$copyflash){ $exp1="[--copyimg--]"; $exp2="[/--copyimg--]"; //去掉flash多余链接 $zz2="/\<(embed|EMBED) (.*?)(src|SRC)=('|\"|\\\\\"|)(.+?)(\.swf|\.SWF)(.*?)>(.*?)<\/(embed|EMBED)>/is"; $text=preg_replace($zz2,"",$text); $zz3="/\<(param|PARAM) (name|NAME)=\"(Src|src|SRC)\" (.*?)(value|VALUE)=('|\"|\\\\\"|)(.+?)(\.swf|\.SWF)(.*?)>/is"; $text=preg_replace($zz3,"",$text); $zz1="/\<(param|PARAM) (.*?)(name|NAME)=\"(movie|MOVIE)\" (.*?)(value|VALUE)=('|\"|\\\\\"|)(.+?)(\.swf|.SWF)(\.*?)>/is"; $text=preg_replace($zz1,"<\\1 \\2\\3=\"\\4\" \\5\\6=\\7".$exp1."\\8\\9".$exp2."\\10>",$text); return $text; } //替换图片链接 function DoRepImgLink($text,$newurl){ //去掉图片链接 $zz2="/\<(a|A) (.*?)(href|Href)=('|\"|\\\\\"|)(.+?)><(img|IMG) (.*?)(src|SRC)=('|\"|\\\\\"|)(.*?)><\/(a|A)>/is"; $text=preg_replace($zz2,"<\\6 \\7\\8=\\9\\10>",$text); //新链接 $zz1="/\<(img|IMG) (.*?)(src|SRC)=('|\"|\\\\\"|)(.*?)>/is"; $text=preg_replace($zz1,"<\\1 \\2\\3=\\4\\5>",$text); return $text; } //截取图片 function CopyImg($text,$copyimg,$copyflash,$classid,$qz,$username,$theid,$cjid,$mark,$fstb=1){ global $empire,$public_r,$cjnewsurl,$navtheid,$dbtbpre; if(empty($text)) {return "";} $navtheid=(int)$navtheid; $fstb=(int)$fstb; if($copyimg) { $text=RepImg($text,$copyflash); } if($copyflash) {$text=RepFlash($text,$copyflash);} $exp1="[--copyimg--]"; $exp2="[/--copyimg--]"; $r=explode($exp1,$text); for($i=1;$ifetch1("select sonclass from {$dbtbpre}enewsmod where mid='$modid'"); $addminfocid=$modr['sonclass']; } } else {$exp="  ".$exp;} $sql=$empire->query("select classid,classname,bclassid,islast,openadd,modid,sonclass from {$dbtbpre}enewsclass where bclassid='$bclassid' and wburl='' order by myorder,classid"); $returnstr=""; while($r=$empire->fetch($sql)) { //投稿显示 if($enews==2) { if($r[openadd]) { continue; } if(CheckHaveInClassid($r,$addminfocid)==0) { continue; } } if($r[islast]) { if(empty($enews)||$enews==2||$enews==3||$enews==4) { $color=" style='background:#".$public_r['chclasscolor']."'"; } //隐藏不能投稿的栏目 if($enews==2) { if($modid) { if($r[modid]<>$modid) {continue;} } } //模型 if($enews==4) { if($r[modid]<>$modid) {continue;} } } else {$color="";} if($r[classid]==$obclassid) {$select=" selected";} else {$select="";} //-----------增加用户时 if($enews==3) { $c=explode("|".$r[classid]."|",$adminclass); if(count($c)>1) {$select=" selected";} else {$select="";} } $returnstr.=""; if(empty($r[islast])) { $returnstr.=ShowClass_AddClass($adminclass,$obclassid,$r[classid],$exp,$modid,$enews,$addminfocid); } } return $returnstr; } //设置伸缩 function SetDisplayClass($open){ $time=time()+365*24*3600; $set=esetcookie("displayclass",$open,$time,1); echo""; exit(); } //删除目录函数 function DelPath($DelPath){ if($DelPath=="../../"||$DelPath=="../../d/file/") {return "";} $wm_chief=new del_path(); $wm_chief_ok=$wm_chief->wm_chief_delpath($DelPath); return $wm_chief_ok; } //复制目录 function CopyPath($oldpath,$newpath){ $wm_chief=new copy_path(); $wm_chief_ok=$wm_chief->wm_chief_copypath($oldpath,$newpath); return $wm_chief_ok; } //移动目录 function MovePath($oldpath,$newpath){ //复制 CopyPath($oldpath,$newpath); //删除 DelPath($oldpath); } //替换字符 function RepInfoZZ($text,$exp,$enews=0){ $text=str_replace(".","\\.",$text); $text=str_replace("(","\\(",$text); $text=str_replace(")","\\)",$text); $text=str_replace("?","\\?",$text); $text=str_replace("*","(.*?)",$text); $text=str_replace("[!--".$exp."--]","(.*?)",$text); //$text=str_replace("\\","\\\\",$text); //$text=str_replace("\"","\"",$text); $text=str_replace("/","\\/",$text); $text=str_replace("-","\\-",$text); $text=str_replace("|","\\|",$text); $text=str_replace("+","\\+",$text); $text=str_replace("^","\\^",$text); $text=str_replace("{","\\{",$text); $text=str_replace("}","\\}",$text); $text=str_replace("[","\\[",$text); $text=str_replace("]","\\]",$text); $text=str_replace("\$","\\\$",$text); $text="/".$text."/is"; return $text; } //取得地址前缀 function GetPageurlQz($self){ $sr=explode("/",$self); $count=count($sr)-1; $sfile=$sr[$count]; $r['selfqz']=substr($self,0,strlen($self)-strlen($sfile)); //取得域名 $expstr=stristr($self,'https://')?'https://':'http://'; $sr1=explode($expstr,$self); $sr2=explode("/",$sr1[1]); $r['domain']=$expstr.$sr2[0]; return $r; } //去掉单引号 function RepDyh($text){ //$text=str_replace("\'","\\\'",stripSlashes($text)); $text=addslashes(stripSlashes($text)); return $text; } //补零 function AddNumZero($no,$endno){ $len=strlen($endno); $forlen=$len-strlen($no); for($i=1;$i<=$forlen;$i++) { $no="0".$no; } return $no; } //自动分页 function AutoDoPage($mybody,$spsize){ $sptag="[!--empirenews.page--]"; if(strlen($mybody)<$spsize) return $mybody; $bds = explode('<',$mybody); $npageBody = ""; $istable = 0; $mybody = ""; foreach($bds as $i=>$k) { if($i==0){ $npageBody .= $bds[$i]; continue;} $bds[$i] = "<".$bds[$i]; if(strlen($bds[$i])>6){ $tname = substr($bds[$i],1,5); if(strtolower($tname)=='table') $istable++; else if(strtolower($tname)=='/tabl') $istable--; if($istable>0){ $npageBody .= $bds[$i]; continue; } else $npageBody .= $bds[$i]; }else{ $npageBody .= $bds[$i]; } if(strlen($npageBody)>$spsize){ $mybody .= $npageBody.$sptag; $npageBody = ""; } } if($npageBody!="") $mybody .= $npageBody; return $mybody; } //-------------- 模板区 ---------------------- //取得模型ID function GetListtempMid($tempid){ global $empire; $r=$empire->fetch1("select modid from ".GetTemptb("enewslisttemp")." where tempid='$tempid'"); return $r[modid]; } //替换模板JS地址 function RepTemplateJsUrl($temp,$classid,$enews=0){ global $public_r,$class_r,$class_zr; $allpath='[!--news.url--]d/js/js/'; $temp=str_replace("[!--hotnews--]","",$temp); $temp=str_replace("[!--newnews--]","",$temp); $temp=str_replace("[!--goodnews--]","",$temp); $temp=str_replace("[!--hotplnews--]","",$temp); $temp=str_replace("[!--firstnews--]","",$temp); if(!empty($classid)) { $path=$enews==1?'[!--news.url--]d/js/class/zt[!--self.classid--]_':'[!--news.url--]d/js/class/class[!--self.classid--]_'; $temp=str_replace("[!--self.hotnews--]","",$temp); $temp=str_replace("[!--self.newnews--]","",$temp); $temp=str_replace("[!--self.goodnews--]","",$temp); $temp=str_replace("[!--self.hotplnews--]","",$temp); $temp=str_replace("[!--self.firstnews--]","",$temp); } return $temp; } //-------------- 生成区 ---------------------- //取得列表模板 function GetListTemp($tempid){ global $empire; $r=$empire->fetch1("select temptext,subnews,listvar,rownum,showdate,modid,subtitle,docode from ".GetTemptb("enewslisttemp")." where tempid='$tempid'"); $r[temptext]=InfoNewsBq('list'.$tempid,$r[temptext]); return $r; } //取得封面模板 function GetClassTemp($tempid){ global $empire; $r=$empire->fetch1("select temptext from ".GetTemptb("enewsclasstemp")." where tempid='$tempid'"); return $r['temptext']; } //取得栏目页面内容 function GetClassText($classid){ global $empire,$dbtbpre; $r=$empire->fetch1("select classtext from {$dbtbpre}enewsclassadd where classid='$classid'"); return $r['classtext']; } //取得专题页面内容 function GetZtText($ztid){ global $empire,$dbtbpre; $r=$empire->fetch1("select classtext from {$dbtbpre}enewsztadd where ztid='$ztid'"); return $r['classtext']; } //取得专题子类页面内容 function GetZtcText($cid){ global $empire,$dbtbpre; $r=$empire->fetch1("select classtext from {$dbtbpre}enewszttypeadd where cid='$cid'"); return $r['classtext']; } //取得首页模板 function GetIndextemp(){ global $empire,$dbtbpre,$public_r; if($public_r['indexpageid']) { $r=$empire->fetch1("select temptext from {$dbtbpre}enewsindexpage where tempid='".$public_r['indexpageid']."'"); return $r['temptext']; } $r=$empire->fetch1("select indextemp from ".GetTemptb("enewspubtemp")." limit 1"); return $r['indextemp']; } //取得内容模板 function GetNewsTemp($newstempid){ global $empire,$public_r; $r=$empire->fetch1("select temptext,showdate from ".GetTemptb("enewsnewstemp")." where tempid='$newstempid'"); $r[temptext]=InfoNewsBq('news'.$newstempid,$r[temptext]); if($public_r[opennotcj])//启用反采集 { $r[temptext]=ReturnNotcj($r[temptext]); } return $r; } //取得js模板 function GetTheJstemp($tempid){ global $empire; $r=$empire->fetch1("select temptext,showdate,modid,subnews,subtitle from ".GetTemptb("enewsjstemp")." where tempid='$tempid'"); return $r; } //替换全局模板变量 function ReplaceTempvar($temp){ global $empire; if(empty($temp)) {return $temp;} $sql=$empire->query("select myvar,varvalue from ".GetTemptb("enewstempvar")." where isclose=0 order by myorder desc,varid"); while($r=$empire->fetch($sql)) { $temp=str_replace('[!--temp.'.$r[myvar].'--]',$r[varvalue],$temp); } return $temp; } //栏目页替换公共标记 function Class_ReplaceSvars($temp,$url,$classid,$title,$key,$des,$classimg,$add,$enews=0){ global $public_r,$class_r,$class_zr; $temp=str_replace('[!--class.menu--]',$public_r['classnavs'],$temp);//栏目导航 $temp=str_replace('[!--pagetitle--]',$title,$temp); $temp=str_replace('[!--pagekey--]',$key,$temp); $temp=str_replace('[!--pagedes--]',$des,$temp); $temp=str_replace('[!--class.intro--]',$des,$temp); $temp=str_replace('[!--class.keywords--]',$key,$temp); $temp=str_replace('[!--class.classimg--]',$classimg,$temp); $temp=str_replace('[!--self.classid--]',$classid,$temp); if($enews==0)//栏目 { $temp=str_replace('[!--class.name--]',$class_r[$classid]['classname'],$temp); $bclassid=$class_r[$classid]['bclassid']; $temp=str_replace('[!--bclass.id--]',$bclassid,$temp); $temp=str_replace('[!--bclass.name--]',$class_r[$bclassid]['classname'],$temp); $path=$public_r['newsurl'].'d/js/class/class'.$classid.'_'; } else//专题 { $temp=str_replace('[!--class.name--]',$class_zr[$classid]['ztname'],$temp); $path=$public_r['newsurl'].'d/js/class/zt'.$classid.'_'; } $allpath=$public_r[newsurl].'d/js/js/'; //热门文章 $temp=str_replace("[!--hotnews--]","",$temp); $temp=str_replace("[!--self.hotnews--]","",$temp); //点击排行 $temp=str_replace("[!--newnews--]","",$temp); $temp=str_replace("[!--self.newnews--]","",$temp); //推荐 $temp=str_replace("[!--goodnews--]","",$temp); $temp=str_replace("[!--self.goodnews--]","",$temp); //评论排行 $temp=str_replace("[!--hotplnews--]","",$temp); $temp=str_replace("[!--self.hotplnews--]","",$temp); //头条排行 $temp=str_replace("[!--firstnews--]","",$temp); $temp=str_replace("[!--self.firstnews--]","",$temp); $temp=str_replace('[!--news.url--]',$public_r['newsurl'],$temp); return $temp; } //内容页替换公共标记 function Info_ReplaceSvars($temp,$url,$classid,$title,$key,$des){ global $public_r,$class_r; $temp=str_replace('[!--class.menu--]',$public_r['classnavs'],$temp);//栏目导航 $temp=str_replace('[!--newsnav--]','',$temp);//位置导航 $temp=str_replace('[!--pagetitle--]','',$temp); $temp=str_replace('[!--pagekey--]','',$temp); $temp=str_replace('[!--pagedes--]','',$temp); $temp=str_replace('[!--self.classid--]','',$temp); $bclassid=$class_r[$classid]['bclassid']; $temp=str_replace('[!--bclass.id--]','',$temp); $temp=str_replace('[!--bclass.name--]','',$temp); $temp=str_replace('[!--news.url--]',$public_r['newsurl'],$temp); return $temp; } //动态内容页替换公共标记 function DtInfo_ReplaceSvars($temp,$url,$classid,$title,$key,$des){ global $public_r,$class_r; $temp=str_replace('[!--class.menu--]',$public_r['classnavs'],$temp);//栏目导航 $temp=str_replace('[!--newsnav--]',$url,$temp);//位置导航 $temp=str_replace('[!--pagetitle--]',$title,$temp); $temp=str_replace('[!--pagekey--]',$key,$temp); $temp=str_replace('[!--pagedes--]',$des,$temp); $temp=str_replace('[!--self.classid--]',$classid,$temp); $bclassid=$class_r[$classid]['bclassid']; $temp=str_replace('[!--bclass.id--]',$bclassid,$temp); $temp=str_replace('[!--bclass.name--]',$class_r[$bclassid]['classname'],$temp); $temp=str_replace('[!--news.url--]',$public_r['newsurl'],$temp); return $temp; } //替换搜索模板文件 function ReplaceStemp($temptext,$class,$url,$classid,$title,$key,$des,$repvar=1){ global $public_r; if($repvar==1)//全局模板变量 { $temptext=ReplaceTempvar($temptext); } $temptext=str_replace('[!--class.menu--]',$public_r['classnavs'],$temptext);//栏目导航 $temptext=str_replace("[!--class--]",$class,$temptext); $temptext=str_replace('[!--pagetitle--]',$title,$temptext); $temptext=str_replace('[!--pagekey--]',$key,$temptext); $temptext=str_replace('[!--pagedes--]',$des,$temptext); $temptext=str_replace('[!--self.classid--]',$classid,$temptext); //热门文章 $temptext=str_replace("[!--hotnews--]","",$temptext); //点击排行 $temptext=str_replace("[!--newnews--]","",$temptext); //推荐 $temptext=str_replace("[!--goodnews--]","",$temptext); //评论排行 $temptext=str_replace("[!--hotplnews--]","",$temptext); //导航条 $temptext=str_replace("[!--url--]",$url,$temptext); $temptext=str_replace('[!--newsnav--]',$url,$temptext);//位置导航 $temptext=str_replace("[!--news.url--]",$public_r[newsurl],$temptext); $temptext=str_replace("[!--newsurl--]",$public_r[newsurl],$temptext); return $temptext; } //栏目页验证 function AddCheckClassLevel($classid,$groupid,$classpath){ $classpath=ReturnSaveClassPath($classid); $pr=explode('/',$classpath); $pcount=count($pr); for($i=0;$i<$pcount;$i++) { $include.='../'; } $include1=$include; $include.='e/class/CheckClassLevel.php'; $addlevel=""; return $addlevel; } //生成栏目绑定信息页面 function ReClassBdInfo($classid){ global $empire,$dbtbpre; $classid=(int)$classid; $cr=$empire->fetch1("select classid,bdinfoid from {$dbtbpre}enewsclass where classid='$classid'"); if(!$cr['classid']||!$cr['bdinfoid']) { return ''; } eAutodo_AddDo('ReListHtml',$classid,0,0,0,0);//moreportdo $infor=explode(',',$cr['bdinfoid']); $infofile=GetInfoFilename(intval($infor[0]),intval($infor[1])); $classtext=''; if($infofile) { if(file_exists($infofile)) { $classtext=ReadFiletext($infofile); } else { $classtext=ReClassBdInfoDtHtml($infor[0],$infor[1]); } } $classfile=eReturnTrueEcmsPath().ReturnSaveClassPath($classid,1);//moreport WriteFiletext_n($classfile,$classtext); } //栏目绑定动态信息 function ReClassBdInfoDtHtml($classid,$id){ global $empire,$dbtbpre,$public_r; $classid=(int)$classid; $id=(int)$id; if(!$classid||!$id) { return ''; } $infourl=$public_r['newsurl'].'e/public/InfoUrl/?classid='.$classid.'&id='.$id; $html=''; return $html; } //生成碎片文件 function DoSpReFile($r,$spid=0){ global $empire,$dbtbpre; if($spid) { $r=$empire->fetch1("select spid,varname,refile,spfile,spfileline,spfilesub from {$dbtbpre}enewssp where spid='$spid' limit 1"); } if(!$r['refile']) { return ''; } eAutodo_AddDo('ReSp',$r['spid'],0,0,0,0);//moreportdo ob_start(); sys_eShowSpInfo($r['varname'],$r['spfileline'],$r['spfilesub']); $string=ob_get_contents(); ob_end_clean(); $filename=eReturnTrueEcmsPath().$r['spfile']; WriteFiletext($filename,$string); } //标签替换 function NewsBq($classid,$indextext,$enews=0,$doing=0){ global $empire,$dbtbpre,$public_r,$emod_r,$class_r,$class_zr,$fun_r,$navclassid,$navinfor,$class_tr,$level_r,$etable_r; $indextext=stripSlashes($indextext); $indextext=ReplaceTempvar($indextext);//替换全局模板变量 $classlevel=''; if($enews==0)//生成大栏目 { if($class_r[$classid]['listdt']||$class_r[$classid]['wburl']||strstr($public_r['nreclass'],','.$classid.',')||InfoIsInTable($class_r[$classid]['tbname']))//不生成栏目 { return ''; } $GLOBALS['navclassid']=$classid; $url=ReturnClassLink($classid);//导航 $cf=$doing==1?',classpath,classtype,classname':''; $cr=$empire->fetch1("select classpagekey,intro,classimg,cgroupid".$cf." from {$dbtbpre}enewsclass where classid='$classid'"); if(!empty($cf)) { $class_r[$classid][classpath]=$cr[classpath]; $class_r[$classid][classtype]=$cr[classtype]; $class_r[$classid][classname]=$cr[classname]; } eAutodo_AddDo('ReListHtml',$classid,0,0,0,0);//moreportdo //权限 if($cr['cgroupid']) { $classlevel=AddCheckClassLevel($classid,$cr['cgroupid'],''); } //页面 $pagetitle=ehtmlspecialchars($class_r[$classid][classname]); $pagekey=ehtmlspecialchars($cr['classpagekey']); $pagedes=ehtmlspecialchars($cr['intro']); $classimg=$cr['classimg']; $onclick=""; $truefile=eReturnTrueEcmsPath().ReturnSaveClassPath($classid,1);//moreport $file=eReturnTrueEcmsPath().'e/data/tmp/class'.$classid.'.php'; $indextext=str_replace("[!--newsnav--]",$url,$indextext);//位置导航 $indextext=Class_ReplaceSvars($indextext,$url,$classid,$pagetitle,$pagekey,$pagedes,$classimg,$add,0); } elseif($enews==3)//专题 { $GLOBALS['navclassid']=$classid; $url=ReturnZtLink($classid);//导航 $cf=$doing==1?',ztpath,zttype,ztname':''; $cr=$empire->fetch1("select ztpagekey,intro,ztimg".$cf." from {$dbtbpre}enewszt where ztid='$classid'"); if(!empty($cf)) { $class_zr[$classid][ztpath]=$cr[ztpath]; $class_zr[$classid][zttype]=$cr[zttype]; $class_zr[$classid][ztname]=$cr[ztname]; } eAutodo_AddDo('ReZtListHtml',$classid,0,0,0,0);//moreportdo $pagetitle=ehtmlspecialchars($class_zr[$classid][ztname]); $pagekey=ehtmlspecialchars($cr['ztpagekey']); $pagedes=ehtmlspecialchars($cr['intro']); $classimg=$cr['ztimg']; $onclick=""; $truefile=eReturnTrueEcmsPath().ReturnSaveZtPath($classid,1);//moreport $file=eReturnTrueEcmsPath().'e/data/tmp/zt'.$classid.'.php'; $indextext=str_replace("[!--newsnav--]",$url,$indextext);//位置导航 $indextext=Class_ReplaceSvars($indextext,$url,$classid,$pagetitle,$pagekey,$pagedes,$classimg,$add,1); } elseif($enews==4)//专题子类 { $cr=$empire->fetch1("select ztid,cname,ttype,tfile from {$dbtbpre}enewszttype where cid='$classid'"); eAutodo_AddDo('ReZtcListHtml',$classid,0,0,0,0);//moreportdo $GLOBALS['navclassid']=$classid; $GLOBALS['navinfor']['ecmsbid']=$cr['ztid']; $url=ReturnZtLink($cr['ztid']);//导航 $pagetitle=ehtmlspecialchars($cr['cname']); $pagekey=ehtmlspecialchars($cr['cname']); $pagedes=ehtmlspecialchars($cr['cname']); $onclick=""; $truefile=eReturnTrueEcmsPath().ReturnSaveZtPath($cr['ztid'],0).'/'.$cr['tfile'].$cr['ttype'];//moreport $file=eReturnTrueEcmsPath().'e/data/tmp/ztc'.$classid.'.php'; $indextext=str_replace("[!--newsnav--]",$url,$indextext);//位置导航 $indextext=Class_ReplaceSvars($indextext,$url,$classid,$pagetitle,$pagekey,$pagedes,$classimg,$add,1); } elseif($enews==1)//生成首页文件 { $pr=$empire->fetch1("select sitekey,siteintro,indexpagedt from {$dbtbpre}enewspublic limit 1"); if($pr['indexpagedt']||(Moreport_ReturnMustDt()&&!defined('ECMS_SELFPATH')))//moreport { return ''; } eAutodo_AddDo('ReIndex',0,0,0,0,0,'',1);//moreportdo //页面 $pagetitle=ehtmlspecialchars($public_r['sitename']); $pagekey=ehtmlspecialchars($pr['sitekey']); $pagedes=ehtmlspecialchars($pr['siteintro']); $url="".$fun_r['index']."";//栏目导航 $onclick=''; $truefile=eReturnTrueEcmsPath().ReturnSaveIndexFile();//moreport $file=eReturnTrueEcmsPath().'e/data/tmp/index.php'; $indextext=ReplaceSvars($indextext,$url,0,$pagetitle,$pagekey,$pagedes,$add,0); } $indextext=str_replace("[!--page.stats--]",$onclick,$indextext); //替换标签 $indextext=DoRepEcmsLoopBq($indextext); $indextext=RepBq($indextext); //写文件 WriteFiletext($file,AddCheckViewTempCode().$indextext); //读取文件内容 ob_start(); include($file); $string=ob_get_contents(); ob_end_clean(); $string=RepExeCode($string);//解析代码 WriteFiletext($truefile,$classlevel.$string); return $string; } //标签替换2 function InfoNewsBq($classid,$indextext){ global $empire,$dbtbpre,$public_r,$emod_r,$class_r,$class_zr,$fun_r,$navclassid,$navinfor,$class_tr,$level_r,$etable_r; if(!defined('EmpireCMSAdmin')) { $_GET['reallinfotime']=0; } if($_GET['reallinfotime']) { $classid.='_all'; } $file=eReturnTrueEcmsPath().'e/data/tmp/temp'.$classid.'.php'; if($_GET['reallinfotime']&&file_exists($file)) { $filetime=filemtime($file); if($_GET['reallinfotime']<=$filetime) { ob_start(); include($file); $string=ob_get_contents(); ob_end_clean(); $string=RepExeCode($string);//解析代码 return $string; } } $indextext=stripSlashes($indextext); $indextext=ReplaceTempvar($indextext);//替换全局模板变量 //替换标签 $indextext=DoRepEcmsLoopBq($indextext); $indextext=RepBq($indextext); //写文件 WriteFiletext($file,AddCheckViewTempCode().$indextext); //读取文件内容 ob_start(); include($file); $string=ob_get_contents(); ob_end_clean(); $string=RepExeCode($string);//解析代码 return $string; } //标签替换3 function GetInfoNewsBq($classid,$newstemp_r,$ecms_gr,$docheckrep){ global $empire,$dbtbpre,$public_r,$emod_r,$class_r,$class_zr,$fun_r,$navclassid,$navinfor,$class_tr,$level_r,$etable_r; if(!defined('EmpireCMSAdmin')) { $_GET['reallinfotime']=0; } if($_GET['reallinfotime']) { $file=eReturnTrueEcmsPath().'e/data/tmp/tempnews'.$newstemp_r['tempid'].'_all.php'; } else { $file=eReturnTrueEcmsPath().'e/data/tmp/tempnews'.$newstemp_r['tempid'].'.php'; } //变量处理 $grurl=ReturnClassLink($ecms_gr['classid']);//导航 $grpagetitle=ehtmlspecialchars($ecms_gr['title']); $grbclassid=$class_r[$ecms_gr['classid']]['bclassid']; $grtitleurl=sys_ReturnBqTitleLink($ecms_gr); $grclassurl=sys_ReturnBqClassname($ecms_gr,9); if($_GET['reallinfotime']&&file_exists($file)) { $filetime=filemtime($file); if($_GET['reallinfotime']<=$filetime) { ob_start(); include($file); $string=ob_get_contents(); ob_end_clean(); $string=RepExeCode($string);//解析代码 return $string; } } $formatdate=$newstemp_r['showdate']; $newstemp_r['temptext']=stripSlashes($newstemp_r['temptext']); $newstemp_r['temptext']=ReplaceTempvar($newstemp_r['temptext']);//替换全局模板变量 //替换标签 $newstemp_r['temptext']=DoRepEcmsLoopBq($newstemp_r['temptext']); $newstemp_r['temptext']=RepBq($newstemp_r['temptext']); //替换变量 $indextext=GetHtmlRepVar($newstemp_r,$ecms_gr['classid']); //写文件 WriteFiletext($file,AddCheckViewTempCode().$indextext); //读取文件内容 ob_start(); include($file); $string=ob_get_contents(); ob_end_clean(); $string=RepExeCode($string);//解析代码 return $string; } //标签替换4 function DtNewsBq($classid,$indextext,$ecms=0){ global $empire,$dbtbpre,$public_r,$emod_r,$class_r,$class_zr,$fun_r,$navclassid,$navinfor,$class_tr,$level_r,$etable_r; $cachetime=$ecms==1?$public_r['dtncachetime']:$public_r['dtcachetime']; $file=ECMS_PATH.'e/data/tmp/dt_temp'.$classid.'.php'; if($cachetime&&file_exists($file)) { $filetime=filemtime($file); if(time()-$cachetime*60<=$filetime) { ob_start(); include($file); $string=ob_get_contents(); ob_end_clean(); $string=RepExeCode($string);//解析代码 return $string; } } $indextext=stripSlashes($indextext); $indextext=ReplaceTempvar($indextext);//替换全局模板变量 //替换标签 $indextext=DoRepEcmsLoopBq($indextext); $indextext=RepBq($indextext); //写文件 WriteFiletext($file,AddCheckViewTempCode().$indextext); //读取文件内容 ob_start(); include($file); $string=ob_get_contents(); ob_end_clean(); $string=RepExeCode($string);//解析代码 return $string; } //解析代码 function RepExeCode($string){ global $public_r; if($public_r['candocode']&&$public_r['candocodetag']) { $string=str_replace('','<',$string); $string=str_replace('','>',$string); } return $string; } function ClearRepDoECode($string){ $string=str_replace('','<!--code.start-->',$string); $string=str_replace('','<!--code.end-->',$string); return $string; } //替换标签 function RepBq($indextext){ global $empire,$dbtbpre; $sql=$empire->query("select bq,funname from {$dbtbpre}enewsbq where isclose=0 order by bqid"); while($r=$empire->fetch($sql)) { $preg_str="/\[".$r[bq]."\](.+?)\[\/".$r[bq]."\]/is"; $indextext=preg_replace($preg_str,"",$indextext); } return $indextext; } //替换灵动标签 function DoRepEcmsLoopBq($temp){ $yzz="/\[e:loop={(.+?)}\](.+?)\[\/e:loop\]/is"; $xzz="fetch(\$ecms_bq_sql)){ \$bqsr=sys_ReturnEcmsLoopStext(\$bqr); \$bqno++; ?>\\2"; $temp=preg_replace($yzz,$xzz,$temp); $temp=DoRepEcmsIndexLoopBq($temp); return $temp; } //替换索引灵动标签 function DoRepEcmsIndexLoopBq($temp){ $yzz="/\[e:indexloop={(.+?)}\](.+?)\[\/e:indexloop\]/is"; $xzz="fetch(\$ecms_bq_sql)){ if(empty(\$class_r[\$indexbqr['classid']]['tbname'])){continue;} \$bqr=\$empire->fetch1(\"select * from {\$dbtbpre}ecms_\".\$class_r[\$indexbqr['classid']]['tbname'].\" where id='\$indexbqr[id]'\"); \$bqsr=sys_ReturnEcmsLoopStext(\$bqr); \$bqno++; ?>\\2"; return preg_replace($yzz,$xzz,$temp); } //无信息的信息列表 function NotinfoListHtml($path,$list_r,$classlevel){ global $fun_r; $word=$fun_r['HaveNotListInfo']; $pagetext=$list_r[0].$word.$list_r[2]; $pagetext=str_replace('[!--show.page--]','',$pagetext); $pagetext=str_replace('[!--show.listpage--]','',$pagetext); $pagetext=str_replace('[!--list.pageno--]','',$pagetext); WriteFiletext($path,$classlevel.$pagetext); } //生成信息列表 function ListHtml($classid,$fields,$enews=0,$userlistr=""){ global $empire,$dbtbpre,$emod_r,$public_r,$class_r,$class_zr,$fun_r,$class_tr,$level_r,$etable_r; //不生成栏目 if(($enews==0||$enews==3)&&($class_r[$classid]['listdt']||$class_r[$classid]['wburl']||strstr($public_r['nreclass'],','.$classid.','))) { return ''; } $GLOBALS['navclassid']=$classid; $doclass="index"; $classlevel=''; $yhvar='qlist'; if($enews==0)//子栏目列表 { if(InfoIsInTable($class_r[$classid][tbname]))//内部表 { return ''; } $selfclassid=$classid; $doenews=0; $cr=$empire->fetch1("select classpagekey,intro,classimg,cgroupid,repagenum,bdinfoid,addsql from {$dbtbpre}enewsclass where classid='$classid'"); //绑定信息 if(!empty($cr['bdinfoid'])) { ReClassBdInfo($classid); return ''; } eAutodo_AddDo('ReListHtml',$classid,0,0,0,0);//moreportdo $mid=$class_r[$classid][modid]; //权限 if($cr['cgroupid']) { $classlevel=AddCheckClassLevel($classid,$cr['cgroupid'],''); } //页面 $pagetitle=ehtmlspecialchars($class_r[$classid][classname]); $pagekey=ehtmlspecialchars($cr['classpagekey']); $pagedes=ehtmlspecialchars($cr['intro']); $classimg=$cr['classimg']; $url=ReturnClassLink($classid); $haveclass=0; //排序 if(empty($class_r[$classid][reorder])) { $addorder="newstime desc"; } else { $addorder=$class_r[$classid][reorder]; } //分页参数 $pagefunr=eReturnRewriteLink('classpage',$classid,0); $pagefunr['repagenum']=$cr['repagenum']; $totalrepage=$cr['repagenum']*$class_r[$classid][lencord]; if($totalrepage) { $limit=" limit ".$totalrepage; } if($class_r[$classid][maxnum])//总记录数 { if($class_r[$classid][maxnum]<$totalrepage) { $limit=" limit ".$class_r[$classid][maxnum]; } $limitnum=$class_r[$classid][maxnum]; } //优化 $yhid=$class_r[$classid][yhid]; if($yhid) { $yhadd=ReturnYhSql($yhid,$yhvar,1); } $caddsql=$cr['addsql']?' and ('.$cr['addsql'].')':''; $query="select ".ReturnSqlListF($mid)." from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$yhadd."classid='$classid'".$caddsql." order by ".ReturnSetTopSql('list').$addorder.$limit; $totalquery="select count(*) as total from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$yhadd."classid='$classid'".$caddsql;//统计 $doclasspath=ReturnSaveClassPath($classid,0); $dopath=eReturnTrueEcmsPath().$doclasspath."/";//moreport if(empty($class_r[$classid][classurl])) { $dolink=$public_r[newsurl].$doclasspath."/"; } else { $dolink=$class_r[$classid][classurl]."/"; } $dotype=$class_r[$classid][classtype]; $classname=$class_r[$classid][classname]; $lencord=$class_r[$classid][lencord];//记录数 $onclick=""; //模板 $listtempid=$class_r[$classid][listtempid]; } elseif($enews==5)//标题分类列表 { $mid=$class_tr[$classid]['mid']; $tbname=$emod_r[$mid]['tbname']; if(InfoIsInTable($tbname))//内部表 { return ''; } $selfclassid=$classid; $doenews=1; $cr=$empire->fetch1("select tnum,listtempid,maxnum,reorder,timg,intro,pagekey,listdt,repagenum from {$dbtbpre}enewsinfotype where typeid='$classid'"); //页面 $pagetitle=ehtmlspecialchars($class_tr[$classid]['tname']); $pagekey=ehtmlspecialchars($cr['pagekey']); $pagedes=ehtmlspecialchars($cr['intro']); $classimg=$cr['timg']; $url=ReturnInfoTypeLink($classid); $haveclass=1; if($cr['listdt'])//动态页面 { return ''; } eAutodo_AddDo('ReTtListHtml',$classid,0,0,0,0);//moreportdo //排序 if(empty($cr['reorder'])) { $addorder='newstime desc'; } else { $addorder=$cr['reorder']; } //分页参数 $pagefunr=eReturnRewriteLink('ttpage',$classid,0); $pagefunr['repagenum']=$cr['repagenum']; $totalrepage=$cr['repagenum']*$cr['tnum']; if($totalrepage) { $limit=" limit ".$totalrepage; } if($cr['maxnum']) { if($cr['maxnum']<$totalrepage) { $limit=" limit ".$cr['maxnum']; } $limitnum=$cr['maxnum']; } //优化 $yhid=$class_tr[$classid]['yhid']; if($yhid) { $yhadd=ReturnYhSql($yhid,$yhvar,1); } $query="select ".ReturnSqlListF($mid)." from {$dbtbpre}ecms_".$tbname." where ".$yhadd."ttid='$classid' order by ".ReturnSetTopSql('list').$addorder.$limit; $totalquery="select count(*) as total from {$dbtbpre}ecms_".$tbname." where ".$yhadd."ttid='$classid'";//统计 $doclasspath=ReturnSaveInfoTypePath($classid,0); $dopath=eReturnTrueEcmsPath().$doclasspath."/";//moreport $dolink=$public_r[newsurl].$doclasspath."/"; $dotype=$class_tr[$classid]['ttype']; $classname=$class_tr[$classid]['tname']; $lencord=$cr['tnum'];//记录数 $onclick=""; //模板 $listtempid=$cr['listtempid']; } elseif($enews==3)//大栏目列表 { if(InfoIsInTable($class_r[$classid][tbname]))//内部表 { return ''; } eAutodo_AddDo('ReListHtml',$classid,0,0,0,0);//moreportdo $selfclassid=$classid; $doenews=0; $cr=$empire->fetch1("select classpagekey,intro,classimg,cgroupid,repagenum,addsql from {$dbtbpre}enewsclass where classid='$classid'"); $mid=$class_r[$classid][modid]; //权限 if($cr['cgroupid']) { $classlevel=AddCheckClassLevel($classid,$cr['cgroupid'],''); } //页面 $pagetitle=ehtmlspecialchars($class_r[$classid][classname]); $pagekey=ehtmlspecialchars($cr['classpagekey']); $pagedes=ehtmlspecialchars($cr['intro']); $classimg=$cr['classimg']; $url=ReturnClassLink($classid); $haveclass=1; //排序 if(empty($class_r[$classid][reorder])) { $addorder="newstime desc"; } else { $addorder=$class_r[$classid][reorder]; } //分页参数 $pagefunr=eReturnRewriteLink('classpage',$classid,0); $pagefunr['repagenum']=$cr['repagenum']; $totalrepage=$cr['repagenum']*$class_r[$classid][lencord]; if($totalrepage) { $limit=" limit ".$totalrepage; } if($class_r[$classid][maxnum]) { if($class_r[$classid][maxnum]<$totalrepage) { $limit=" limit ".$class_r[$classid][maxnum]; } $limitnum=$class_r[$classid][maxnum]; } $whereclass=ReturnClass($class_r[$classid][sonclass]); //优化 $yhid=$class_r[$classid][yhid]; if($yhid) { $yhadd=ReturnYhSql($yhid,$yhvar,1); } $caddsql=$cr['addsql']?' and ('.$cr['addsql'].')':''; $query="select ".ReturnSqlListF($mid)." from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$yhadd."(".$whereclass.")".$caddsql." order by ".ReturnSetTopSql('list').$addorder.$limit; $totalquery="select count(*) as total from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$yhadd."(".$whereclass.")".$caddsql;//统计 $doclasspath=ReturnSaveClassPath($classid,0); $dopath=eReturnTrueEcmsPath().$doclasspath."/";//moreport if(empty($class_r[$classid][classurl])) { $dolink=$public_r[newsurl].$doclasspath."/"; } else { $dolink=$class_r[$classid][classurl]."/"; } $dotype=$class_r[$classid][classtype]; $classname=$class_r[$classid][classname]; $lencord=$class_r[$classid][lencord];//记录数 $onclick=""; //模板 $listtempid=$class_r[$classid][listtempid]; } elseif($enews==4)//按sql语句生成列表 { $selfclassid=0; $doenews=1; $userlistr['listsql']=RepSqlTbpre($userlistr['listsql']); $userlistr['totalsql']=RepSqlTbpre($userlistr['totalsql']); //页面 $pagetitle=ehtmlspecialchars($userlistr['pagetitle']); $pagekey=ehtmlspecialchars($userlistr['pagekeywords']); $pagedes=ehtmlspecialchars($userlistr['pagedescription']); $haveclass=1; if($userlistr['maxnum'])//最大查询数 { $limit=" limit ".$userlistr['maxnum']; $limitnum=$userlistr['maxnum']; } $query=stripSlashes($userlistr['listsql']).$limit; //统计 $totalquery=stripSlashes($userlistr['totalsql']); $dopath=eReturnTrueEcmsPath().'e/data/'.$userlistr['filepath'];//maddpath $dolink=$public_r[newsurl].str_replace('../../','',$userlistr['filepath']); $dotype=$userlistr['filetype']; $classname=$userlistr['pagetitle']; $lencord=$userlistr['lencord'];//记录数 $onclick=''; $url=ReturnUserPLink($pagetitle,$dolink); //模板 $listtempid=$userlistr['listtempid']; } if(empty($lencord)) { $lencord=25; } //列表模板 $listtemp_r=GetListTemp($listtempid); $listtemp=$listtemp_r[temptext]; $subnews=$listtemp_r[subnews]; $subtitle=$listtemp_r[subtitle]; $docode=$listtemp_r[docode]; $listvar=str_replace('[!--news.url--]',$public_r[newsurl],$listtemp_r[listvar]); $rownum=$listtemp_r[rownum]; $formatdate=$listtemp_r[showdate]; if(empty($rownum)) { $rownum=1; } if(empty($mid)) { $mid=$listtemp_r[modid]; } $field=ReturnReplaceListF($mid); //分页参数 $pagefunr['dofile']=$dofile; //分页列表函数 if(!empty($public_r['listpagefun'])||!empty($public_r['listpagelistfun'])) { if(strstr($listtemp,'[!--show.page--]'))//下拉式 { $thefun=$public_r['listpagefun']; $bereplistpage='[!--show.page--]'; } else//列表式 { $thefun=$public_r['listpagelistfun']; $bereplistpage='[!--show.listpage--]'; } } else { $thefun='sys_ShowListPage'; $bereplistpage='[!--show.page--]'; } //替换模板变量 $listtemp=str_replace('[!--newsnav--]',$url,$listtemp);//位置导航 $listtemp=Class_ReplaceSvars($listtemp,$url,$selfclassid,$pagetitle,$pagekey,$pagedes,$classimg,$add,$doenews); $listtemp=str_replace('[!--page.stats--]',$onclick,$listtemp); $no=1; $ok=0; $changerow=1; $num=$empire->gettotal($totalquery); //最大数 if($limitnum&&$limitnum<$num) { $num=$limitnum; } $page=ceil($num/$lencord); //取得列表模板 $list_exp="[!--empirenews.listtemp--]"; $list_r=explode($list_exp,$listtemp); //无信息 if(empty($num)) { $noinfopath=$dopath."index".$dotype; NotinfoListHtml($noinfopath,$list_r,$classlevel); return ""; } $sql=$empire->query($query); $listtext=$list_r[1]; while($k=$empire->fetch($sql)) { //替换列表变量 $repvar=ReplaceListVars($no,$listvar,$subnews,$subtitle,$formatdate,$url,$haveclass,$k,$field,$docode); $listtext=str_replace("",$repvar,$listtext); $changerow+=1; //超过行数 if($changerow>$rownum) { $changerow=1; $string.=$listtext; $listtext=$list_r[1]; } if($no%$lencord==0||($num%$lencord<>0&&$num==$no)) { $ok+=1; $pagenum=ceil($no/$lencord); //首页 if($pagenum==1) { $path=$dopath."index".$dotype; } else { $path=$dopath."index_".$ok.$dotype; } //取得分页参数 $returnpager=$thefun($num,$pagenum,$dolink,$dotype,$page,$lencord,$ok,$myoptions,$pagefunr); $showpage=$returnpager['showpage']; $myoptions=$returnpager['option']; $list1=str_replace($bereplistpage,$showpage,$list_r[0]); $list2=str_replace($bereplistpage,$showpage,$list_r[2]); //多余数据 if($changerow<=$rownum&&$listtext<>$list_r[1]) { $string.=$listtext; } $listtext=$list_r[1]; $changerow=1; $string=$list1.$string.$list2; //替换分页数 $string=str_replace('[!--list.pageno--]',($pagenum==1?'':$pagenum),$string); WriteFiletext($path,$classlevel.$string); $string=''; } $no++; } $empire->free($sql); } //生成索引类信息列表 function ListHtmlIndex($classid,$fields,$enews=0,$userlistr=""){ global $empire,$dbtbpre,$emod_r,$public_r,$class_r,$class_zr,$fun_r,$class_tr,$level_r,$etable_r; $GLOBALS['navclassid']=$classid; $dofile="index"; $classlevel=''; $yhvar='qlist'; $mid=0; if($enews==0)//专题列表 { $selfclassid=$classid; $doenews=1; $cr=$empire->fetch1("select ztpagekey,intro,ztimg,classtempid from {$dbtbpre}enewszt where ztid='$classid'"); //页面 $pagetitle=ehtmlspecialchars($class_zr[$classid][ztname]); $pagekey=ehtmlspecialchars($cr['ztpagekey']); $pagedes=ehtmlspecialchars($cr['intro']); $classimg=$cr['ztimg']; $url=ReturnZtLink($classid); $haveclass=1; if($class_zr[$classid][islist]!=1)//非列表式 { $classtemp=$class_zr[$classid][islist]==2?GetZtText($classid):GetClassTemp($cr['classtempid']); NewsBq($classid,$classtemp,3,0); return ""; } eAutodo_AddDo('ReZtListHtml',$classid,0,0,0,0);//moreportdo //排序 if(empty($class_zr[$classid][reorder])) { $addorder='newstime desc'; } else { $addorder=$class_zr[$classid][reorder]; } if($class_zr[$classid][maxnum]) { $limit=' limit '.$class_zr[$classid][maxnum]; $limitnum=$class_zr[$classid][maxnum]; } //优化 $yhid=$class_zr[$classid][yhid]; if($yhid) { $yhadd=ReturnYhSql($yhid,$yhvar,1); } $query="select ztid,cid,classid,id,isgood from {$dbtbpre}enewsztinfo where ".$yhadd."ztid='$classid' order by ".$addorder.$limit; $totalquery="select count(*) as total from {$dbtbpre}enewsztinfo where ".$yhadd."ztid='$classid'";//统计 $doclasspath=ReturnSaveZtPath($classid,0); $dopath=eReturnTrueEcmsPath().$doclasspath."/"; if(empty($class_zr[$classid][zturl])) { $dolink=$public_r[newsurl].$doclasspath."/"; } else { $dolink=$class_zr[$classid][zturl]."/"; } $dotype=$class_zr[$classid][zttype]; $classname=$class_zr[$classid][ztname]; $lencord=$class_zr[$classid][ztnum];//记录数 $onclick=""; //模板 $listtempid=$class_zr[$classid][listtempid]; } elseif($enews==1)//专题子类列表 { $selfclassid=$classid; $doenews=1; $cr=$empire->fetch1("select ztid,cname,islist,listtempid,maxnum,tnum,reorder,ttype,tfile from {$dbtbpre}enewszttype where cid='$classid'"); $GLOBALS['navinfor']['ecmsbid']=$cr['ztid']; //页面 $pagetitle=ehtmlspecialchars($cr['cname']); $pagekey=ehtmlspecialchars($cr['cname']); $pagedes=ehtmlspecialchars($cr['cname']); $url=ReturnZtLink($cr['ztid']); $haveclass=1; if($cr['islist']!=1)//非列表式 { $classtemp=GetZtcText($classid); NewsBq($classid,$classtemp,4,0); return ''; } eAutodo_AddDo('ReZtcListHtml',$classid,0,0,0,0);//moreportdo //排序 if(empty($cr['reorder'])) { $addorder='newstime desc'; } else { $addorder=$cr['reorder']; } if($cr['maxnum']) { $limit=" limit ".$cr['maxnum']; $limitnum=$cr['maxnum']; } //优化 $ztid=$cr['ztid']; $yhid=$class_zr[$ztid][yhid]; if($yhid) { $yhadd=ReturnYhSql($yhid,$yhvar,1); } $query="select ztid,cid,classid,id,isgood from {$dbtbpre}enewsztinfo where ".$yhadd."cid='$classid' order by ".$addorder.$limit; $totalquery="select count(*) as total from {$dbtbpre}enewsztinfo where ".$yhadd."cid='$classid'";//统计 $doclasspath=ReturnSaveZtPath($ztid,0); $dopath=eReturnTrueEcmsPath().$doclasspath."/"; if(empty($class_zr[$ztid][zturl])) { $dolink=$public_r[newsurl].$doclasspath."/"; } else { $dolink=$class_zr[$ztid][zturl]."/"; } $dofile=$cr['tfile'];//文件名 $dotype=$cr['ttype']; $classname=$cr['cname']; $lencord=$cr['tnum'];//记录数 $onclick=""; //模板 $listtempid=$cr['listtempid']; } elseif($enews==4)//按sql语句生成列表 { $selfclassid=0; $doenews=1; $userlistr['listsql']=RepSqlTbpre($userlistr['listsql']); $userlistr['totalsql']=RepSqlTbpre($userlistr['totalsql']); //页面 $pagetitle=ehtmlspecialchars($userlistr['pagetitle']); $pagekey=ehtmlspecialchars($userlistr['pagekeywords']); $pagedes=ehtmlspecialchars($userlistr['pagedescription']); $haveclass=1; if($userlistr['maxnum'])//最大查询数 { $limit=" limit ".$userlistr['maxnum']; $limitnum=$userlistr['maxnum']; } $query=stripSlashes($userlistr['listsql']).$limit; //统计 $totalquery=stripSlashes($userlistr['totalsql']); $dopath=eReturnTrueEcmsPath().'e/data/'.$userlistr['filepath'];//maddpath $dolink=$public_r[newsurl].str_replace('../../','',$userlistr['filepath']); $dotype=$userlistr['filetype']; $classname=$userlistr['pagetitle']; $lencord=$userlistr['lencord'];//记录数 $onclick=''; $url=ReturnUserPLink($pagetitle,$dolink); //模板 $listtempid=$userlistr['listtempid']; } if(empty($lencord)) { $lencord=25; } //列表模板 $listtemp_r=GetListTemp($listtempid); $listtemp=$listtemp_r[temptext]; $subnews=$listtemp_r[subnews]; $subtitle=$listtemp_r[subtitle]; $docode=$listtemp_r[docode]; $listvar=str_replace('[!--news.url--]',$public_r[newsurl],$listtemp_r[listvar]); $rownum=$listtemp_r[rownum]; $formatdate=$listtemp_r[showdate]; if(empty($rownum)) { $rownum=1; } if(empty($mid)) { $mid=$listtemp_r[modid]; } $field=ReturnReplaceListF($mid); //分页参数 $pagefunr['dofile']=$dofile; //分页列表函数 if(!empty($public_r['listpagefun'])||!empty($public_r['listpagelistfun'])) { if(strstr($listtemp,'[!--show.page--]'))//下拉式 { $thefun=$public_r['listpagefun']; $bereplistpage='[!--show.page--]'; } else//列表式 { $thefun=$public_r['listpagelistfun']; $bereplistpage='[!--show.listpage--]'; } } else { $thefun='sys_ShowListPage'; $bereplistpage='[!--show.page--]'; } //替换模板变量 $listtemp=str_replace('[!--newsnav--]',$url,$listtemp);//位置导航 $listtemp=Class_ReplaceSvars($listtemp,$url,$selfclassid,$pagetitle,$pagekey,$pagedes,$classimg,$add,$doenews); $listtemp=str_replace('[!--page.stats--]',$onclick,$listtemp); $no=1; $ok=0; $changerow=1; $num=$empire->gettotal($totalquery); //最大数 if($limitnum&&$limitnum<$num) { $num=$limitnum; } $page=ceil($num/$lencord); //取得列表模板 $list_exp="[!--empirenews.listtemp--]"; $list_r=explode($list_exp,$listtemp); //无信息 if(empty($num)) { $noinfopath=$dopath.$dofile.$dotype; NotinfoListHtml($noinfopath,$list_r,$classlevel); return ""; } $sql=$empire->query($query); $listtext=$list_r[1]; while($k=$empire->fetch($sql)) { if(empty($class_r[$k[classid]][tbname])) { $no++; continue; } $infor=$empire->fetch1("select * from {$dbtbpre}ecms_".$class_r[$k[classid]][tbname]." where id='$k[id]' limit 1"); if(empty($infor['id'])) { $no++; continue; } //替换列表变量 $repvar=ReplaceListVars($no,$listvar,$subnews,$subtitle,$formatdate,$url,$haveclass,$infor,$field,$docode); $listtext=str_replace("",$repvar,$listtext); $changerow+=1; //超过行数 if($changerow>$rownum) { $changerow=1; $string.=$listtext; $listtext=$list_r[1]; } if($no%$lencord==0||($num%$lencord<>0&&$num==$no)) { $ok+=1; $pagenum=ceil($no/$lencord); //首页 if($pagenum==1) { $path=$dopath.$dofile.$dotype; } else { $path=$dopath.$dofile.'_'.$ok.$dotype; } //取得分页参数 $returnpager=$thefun($num,$pagenum,$dolink,$dotype,$page,$lencord,$ok,$myoptions,$pagefunr); $showpage=$returnpager['showpage']; $myoptions=$returnpager['option']; $list1=str_replace($bereplistpage,$showpage,$list_r[0]); $list2=str_replace($bereplistpage,$showpage,$list_r[2]); //多余数据 if($changerow<=$rownum&&$listtext<>$list_r[1]) { $string.=$listtext; } $listtext=$list_r[1]; $changerow=1; $string=$list1.$string.$list2; //替换分页数 $string=str_replace('[!--list.pageno--]',($pagenum==1?'':$pagenum),$string); WriteFiletext($path,$classlevel.$string); $string=''; } $no++; } $empire->free($sql); } //返回分页 function ReturnListpageStr($pagenum,$page,$lencord,$num,$pagelink,$options){ global $public_r; $temp=$public_r['listpagetemp']; $temp=str_replace('[!--thispage--]',$pagenum,$temp);//页次 $temp=str_replace('[!--pagenum--]',$page,$temp);//总页数 $temp=str_replace('[!--lencord--]',$lencord,$temp);//每页显示条数 $temp=str_replace('[!--num--]',$num,$temp);//总条数 $temp=str_replace('[!--pagelink--]',$pagelink,$temp);//页面链接 $temp=str_replace('[!--options--]',$options,$temp);//下拉分页 return $temp; } //投稿生成html function DoGetHtml($classid,$id){ global $empire,$class_r,$public_r,$dbtbpre; $classid=intval($classid); $id=intval($id); $tbname=$class_r[$classid][tbname]; //不存在 if(!$id||!$classid||!$tbname) { echo""; exit(); } $r=$empire->fetch1("select * from {$dbtbpre}ecms_".$tbname." where id='$id'"); if(!$r['id']||$classid!=$r['classid']) { echo""; exit(); } $titleurl=sys_ReturnBqAutoTitleLink($r); //已生成 if(!empty($r[havehtml])) { return $titleurl; } //生成html GetHtml($r['classid'],$r['id'],$r,1); return $titleurl; } //内容变量处理 function GetHtmlRepVar($tempr,$classid){ global $public_r,$class_r,$class_zr,$fun_r,$empire,$dbtbpre,$emod_r,$class_tr,$level_r,$etable_r; $mid=$class_r[$classid]['modid']; $tbname=$class_r[$classid][tbname]; $newstemptext=$tempr[temptext]; $formatdate=$tempr[showdate]; //分页字段 $expage='[!--empirenews.page--]';//分页符 $pf=$emod_r[$mid]['pagef']; //变量 $tempf=$emod_r[$mid]['tempf']; $fr=explode(',',$tempf); $fcount=count($fr)-1; //变量替换 $newstempstr=$newstemptext;//模板 //总体页面变量 $newstempstr=str_replace('[!--class.menu--]',$public_r['classnavs'],$newstempstr);//栏目导航 $newstempstr=str_replace('[!--newsnav--]','',$newstempstr);//位置导航 $newstempstr=str_replace('[!--pagetitle--]','',$newstempstr); $newstempstr=str_replace('[!--pagekey--]','',$newstempstr); $newstempstr=str_replace('[!--pagedes--]','',$newstempstr); $newstempstr=str_replace('[!--self.classid--]','',$newstempstr); $newstempstr=str_replace('[!--bclass.id--]','',$newstempstr); $newstempstr=str_replace('[!--bclass.name--]','',$newstempstr); $newstempstr=str_replace('[!--news.url--]',$public_r['newsurl'],$newstempstr); //信息字段变量 for($i=1;$i<$fcount;$i++) { $f=$fr[$i]; $value='$ecms_gr['.$f.']'; if($f==$pf)//分页字段 { $value='strstr('.$value.',\''.$expage.'\')?\'[!--'.$f.'--]\':'.$value; } elseif($f=='downpath')//下载地址 { $value='ReturnDownSoftHtml($ecms_gr)'; } elseif($f=='onlinepath')//观看地址 { $value='ReturnOnlinepathHtml($ecms_gr)'; } elseif($f=='morepic')//图片集 { $value='ReturnMorepicpathHtml($ecms_gr)'; } elseif($f=='newstime')//时间 { $value='date(\''.$formatdate.'\','.$value.')'; } elseif($f=='befrom')//信息来源 { $value='$docheckrep[1]?ReplaceBefrom('.$value.'):'.$value; } elseif($f=='writer')//作者 { $value='$docheckrep[2]?ReplaceWriter('.$value.'):'.$value; } elseif($f=='titlepic')//标题图片 { $value='empty('.$value.')?$public_r[newsurl].\'e/data/images/notimg.gif\':'.$value; } elseif($f=='title')//标题 { } else//正常字段 { if(!strstr($emod_r[$mid]['editorf'],','.$f.',')) { if(strstr($emod_r[$mid]['tobrf'],','.$f.','))//加br { $value='nl2br('.$value.')'; } if(!strstr($emod_r[$mid]['dohtmlf'],','.$f.','))//去除html { $value='RepFieldtextNbsp(ehtmlspecialchars('.$value.'))'; } } } $newstempstr=str_replace('[!--'.$f.'--]','',$newstempstr); } //固定变量 $newstempstr=str_replace('[!--id--]','',$newstempstr); $newstempstr=str_replace('[!--classid--]','',$newstempstr); $newstempstr=str_replace('[!--class.name--]','',$newstempstr); $newstempstr=str_replace('[!--ttid--]','',$newstempstr); $newstempstr=str_replace('[!--tt.name--]','',$newstempstr); $newstempstr=str_replace('[!--tt.url--]','',$newstempstr); $newstempstr=str_replace('[!--onclick--]','',$newstempstr); $newstempstr=str_replace('[!--userfen--]','',$newstempstr); $newstempstr=str_replace('[!--username--]','',$newstempstr); //带链接的用户名 $newstempstr=str_replace('[!--linkusername--]','\'.$ecms_gr[username].\'\':$ecms_gr[username]?>',$newstempstr); $newstempstr=str_replace('[!--userid--]','',$newstempstr); //相关链接 $keyboardtext=''; $newstempstr=str_replace('[!--other.link--]',$keyboardtext,$newstempstr); $newstempstr=str_replace('[!--plnum--]','',$newstempstr); $newstempstr=str_replace('[!--totaldown--]','',$newstempstr); $newstempstr=str_replace('[!--keyboard--]','',$newstempstr); //链接 $newstempstr=str_replace('[!--titleurl--]','',$newstempstr); //点击 $onclick='\'?>'; $newstempstr=str_replace('[!--page.stats--]',$onclick,$newstempstr); $newstempstr=str_replace('[!--class.url--]','',$newstempstr); //下一篇 if(strstr($newstemptext,'[!--info.next--]')) { $infonext='fetch1("select isurl,titleurl,classid,id,title from {$dbtbpre}ecms_".$class_r[$ecms_gr[classid]][tbname]." where id>$ecms_gr[id] and classid=\'$ecms_gr[classid]\' order by id limit 1"); if(empty($next_r[id])) {$infonext="'.$fun_r['HaveNoNextLink'].'";} else { $nexttitleurl=sys_ReturnBqTitleLink($next_r); $infonext="".$next_r[title].""; } echo $infonext; ?>'; $newstempstr=str_replace('[!--info.next--]',$infonext,$newstempstr); } //上一篇 if(strstr($newstemptext,'[!--info.pre--]')) { $infopre='fetch1("select isurl,titleurl,classid,id,title from {$dbtbpre}ecms_".$class_r[$ecms_gr[classid]][tbname]." where id<$ecms_gr[id] and classid=\'$ecms_gr[classid]\' order by id desc limit 1"); if(empty($next_r[id])) {$infonext="'.$fun_r['HaveNoNextLink'].'";} else { $nexttitleurl=sys_ReturnBqTitleLink($next_r); $infonext="".$next_r[title].""; } echo $infonext; ?>'; $newstempstr=str_replace('[!--info.pre--]',$infopre,$newstempstr); } //投票 if(strstr($newstemptext,'[!--info.vote--]')) { $newstempstr=str_replace('[!--info.vote--]','',$newstempstr); } return $newstempstr; } //生成内容文件 function GetHtml($classid,$id,$add,$ecms=0,$doall=0){ global $public_r,$class_r,$class_zr,$fun_r,$empire,$dbtbpre,$emod_r,$class_tr,$level_r,$etable_r; $mid=$class_r[$classid]['modid']; $tbname=$class_r[$classid][tbname]; if(InfoIsInTable($tbname))//内部表 { return ''; } if($ecms==0)//主表 { $add=$empire->fetch1("select ".ReturnSqlTextF($mid,1)." from {$dbtbpre}ecms_".$tbname." where id='$id' limit 1"); } $add['id']=$id; $add['classid']=$classid; if($add['isurl']) { return ''; } if(empty($doall)) { if(!$add['stb']||$class_r[$add[classid]][showdt]==2||strstr($public_r['nreinfo'],','.$add['classid'].','))//不生成 { return ''; } } //副表 $addr=$empire->fetch1("select ".ReturnSqlFtextF($mid)." from {$dbtbpre}ecms_".$tbname."_data_".$add[stb]." where id='$add[id]' limit 1"); $add=array_merge($add,$addr); //路径 $iclasspath=ReturnSaveInfoPath($add[classid],$add[id]); $doclasspath=eReturnTrueEcmsPath().$iclasspath;//moreport $createinfopath=$doclasspath; //建立日期目录 $newspath=''; if($add[newspath]) { $createpath=$doclasspath.$add[newspath]; if(!file_exists($createpath)) { $r[newspath]=FormatPath($add[classid],$add[newspath],1); } $createinfopath.=$add[newspath].'/'; $newspath=$add[newspath].'/'; } //新建存放目录 if($class_r[$add[classid]][filename]==3) { $createinfopath.=ReturnInfoSPath($add['filename']); DoMkdir($createinfopath); $fn3=1; } //存文本 if($emod_r[$mid]['savetxtf']) { $stf=$emod_r[$mid]['savetxtf']; if($add[$stf]) { $add[$stf]=GetTxtFieldText($add[$stf]); } } eAutodo_AddDo('ReNewsHtml',$classid,$id,0,0,0);//moreportdo $GLOBALS['navclassid']=$add[classid]; $GLOBALS['navinfor']=$add; //取得内容模板 $add[newstempid]=$add[newstempid]?$add[newstempid]:$class_r[$add[classid]][newstempid]; $newstemp_r=$empire->fetch1("select temptext,showdate from ".GetTemptb("enewsnewstemp")." where tempid='$add[newstempid]' limit 1"); $newstemp_r['tempid']=$add['newstempid']; if($public_r['opennotcj'])//启用反采集 { $newstemp_r['temptext']=ReturnNotcj($newstemp_r['temptext']); } $newstemptext=$newstemp_r[temptext]; $formatdate=$newstemp_r[showdate]; //文件类型/权限 if($add[groupid]||$class_r[$add[classid]]['cgtoinfo']) { if(empty($add[newspath])) { $include=''; } else { $pr=explode('/',$add[newspath]); for($i=0;$i"; } else { $filetype=$class_r[$add[classid]][filetype]; $addlevel=''; } //取得本目录链接 if($class_r[$add[classid]][classurl]&&$class_r[$add[classid]][ipath]=='')//域名 { $dolink=$class_r[$add[classid]][classurl].'/'.$newspath; } else { $dolink=$public_r[newsurl].$iclasspath.$newspath; } //返回替换验证字符 $docheckrep=ReturnCheckDoRepStr(); if($add[newstext]) { if(empty($public_r['dorepword'])&&$docheckrep[3]) { $add[newstext]=ReplaceWord($add[newstext]);//过滤字符 } if(empty($public_r['dorepkey'])&&$docheckrep[4]&&!empty($add[dokey]))//替换关键字 { $add[newstext]=ReplaceKey($add['newstext'],$add['classid']); } if($public_r['opencopytext']) { $add[newstext]=AddNotCopyRndStr($add[newstext]);//随机复制字符 } } //返回编译 $newstemptext=GetInfoNewsBq($classid,$newstemp_r,$add,$docheckrep); //分页字段 $expage='[!--empirenews.page--]';//分页符 $pf=$emod_r[$mid]['pagef']; //变量替换 $newstempstr=$newstemptext;//模板 //分页 if($pf&&strstr($add[$pf],$expage))//有分页 { $n_r=explode($expage,$add[$pf]); $thispagenum=count($n_r); //取得分页 $thefun=$public_r['textpagefun']?$public_r['textpagefun']:'sys_ShowTextPage'; //下拉式分页 if(strstr($newstemptext,'[!--title.select--]')) { $dotitleselect=sys_ShowTextPageSelect($thispagenum,$dolink,$add,$filetype,$n_r); } for($j=1;$j<=$thispagenum;$j++) { $string=$newstempstr;//模板 $truepage=''; $titleselect=''; //下一页链接 if($thispagenum==$j) { $thisnextlink=$dolink.$add[filename].$filetype; } else { $thisj=$j+1; $thisnextlink=$dolink.$add[filename].'_'.$thisj.$filetype; } $k=$j-1; if($j==1) { $file=$doclasspath.$newspath.$add[filename].$filetype; $ptitle=$add[title]; } else { $file=$doclasspath.$newspath.$add[filename].'_'.$j.$filetype; $ti_r=explode('[/!--empirenews.page--]',$n_r[$k]); if(count($ti_r)>=2) { $ptitle=$ti_r[0]; $n_r[$k]=$ti_r[1]; } else { $ptitle=$add[title].'('.$j.')'; } } //取得当前页 if($thispagenum!=1) { $truepage=$thefun($thispagenum,$j,$dolink,$add,$filetype,''); $titleselect=str_replace("?".$j."\">","?".$j."\" selected>",$dotitleselect); } //替换变量 $newstext=$n_r[$k]; if(!strstr($emod_r[$mid]['editorf'],','.$pf.',')) { if(strstr($emod_r[$mid]['tobrf'],','.$pf.','))//加br { $newstext=nl2br($newstext); } if(!strstr($emod_r[$mid]['dohtmlf'],','.$pf.','))//去除html { $newstext=ehtmlspecialchars($newstext); $newstext=RepFieldtextNbsp($newstext); } } $string=str_replace('[!--'.$pf.'--]',$newstext,$string); $string=str_replace('[!--p.title--]',strip_tags($ptitle),$string); $string=str_replace('[!--next.page--]',$thisnextlink,$string); $string=str_replace('[!--page.url--]',$truepage,$string); $string=str_replace('[!--title.select--]',$titleselect,$string); //写文件 WriteFiletext($file,$addlevel.$string); } } else { $file=$doclasspath.$newspath.$add[filename].$filetype; $string=$newstempstr;//模板 //替换变量 $string=str_replace('[!--p.title--]',$add[title],$string); $string=str_replace('[!--next.page--]','',$string); $string=str_replace('[!--page.url--]','',$string); $string=str_replace('[!--title.select--]','',$string); //写文件 WriteFiletext($file,$addlevel.$string); } //设为已生成 if(empty($doall)&&empty($add['havehtml'])) { $empire->query("update {$dbtbpre}ecms_".$class_r[$add[classid]][tbname]."_index set havehtml=1 where id='$add[id]' limit 1"); $empire->query("update {$dbtbpre}ecms_".$class_r[$add[classid]][tbname]." set havehtml=1 where id='$add[id]' limit 1"); } } //返回随机字符 function ReturnNotcj($string){ global $notcj_r,$notcjnum; if(empty($notcjnum)) { $rep=""; } else { $i=rand(1,$notcjnum); $rep=$notcj_r[$i]; } $cjword=""; $string=str_replace($cjword,$rep,$string); return $string; } //取得相关链接 function GetKeyboard($keyboard,$keyid,$classid,$id,$link_num){ global $empire,$public_r,$class_r,$fun_r,$dbtbpre; if($keyid&&$link_num) { $add="id in (".$keyid.")"; $tr=$empire->fetch1("select otherlinktemp,otherlinktempsub,otherlinktempdate from ".GetTemptb("enewspubtemp")." limit 1");//取得相关链接模板 $temp_r=explode("[!--empirenews.listtemp--]",$tr[otherlinktemp]); $key_sql=$empire->query("select id,newstime,title,isurl,titleurl,classid,titlepic from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where ".$add." order by newstime desc limit $link_num"); while($link_r=$empire->fetch($key_sql)) { $keyboardtext.=RepOtherTemp($temp_r[1],$link_r,$tr); } $keyboardtext=$temp_r[0].$keyboardtext.$temp_r[2]; } else { $keyboardtext=$fun_r['NotLinkNews']; } return $keyboardtext; } //替换相关链接模板 function RepOtherTemp($temptext,$r,$tr){ global $public_r,$class_r; $title=sub($r[title],0,$tr['otherlinktempsub'],false); $r['newstime']=date($tr['otherlinktempdate'],$r['newstime']); $titlelink=sys_ReturnBqTitleLink($r);//标题链接 $temptext=str_replace("[!--title--]",$title,$temptext); $temptext=str_replace("[!--oldtitle--]",$r[title],$temptext); $temptext=str_replace("[!--titleurl--]",$titlelink,$temptext); $temptext=str_replace("[!--newstime--]",$r[newstime],$temptext); if(empty($r[titlepic])) { $titlepic=$public_r[newsurl]."e/data/images/notimg.gif"; } else { $titlepic=$r[titlepic]; } $temptext=str_replace("[!--titlepic--]",$titlepic,$temptext); return $temptext; } //返回下载地址html代码 function ReturnDownSoftHtml($add){ global $class_r,$public_r,$fun_r,$level_r; if(empty($add[downpath])) { return ''; } //每行显示条数 $down_num=$class_r[$add[classid]][down_num]?$class_r[$add[classid]][down_num]:1; //替换模板 $ydownsofttemp=$public_r[downsofttemp]; $ydownsofttemp=str_replace('[!--classid--]',$add[classid],$ydownsofttemp); $ydownsofttemp=str_replace('[!--id--]',$add[id],$ydownsofttemp); $ydownsofttemp=str_replace('[!--title--]',$add[title],$ydownsofttemp); $ydownsofttemp=str_replace('[!--news.url--]',$public_r[newsurl],$ydownsofttemp); //组合地址 $all_downpath=''; $path_r=explode("\r\n",$add[downpath]); $count=count($path_r); for($pj=0;$pj<$count;$pj++) { $p=$pj+1; if($p%$down_num==0) { $ok='
'; } else { $ok=''; } //相同 if($count==$p) { $ok=''; } if($pj%$down_num==0||$pj==0) { $nbsp=''; } else { $nbsp='  '; } $showdown_r=explode('::::::',$path_r[$pj]); if(count($showdown_r)<2) { $showdown_r[0]=$fun_r['DownPath'].$p; } //模板 $downsofttemp=RepDownOnlinePathTemp($add,$ydownsofttemp,$pj,$showdown_r,0); $all_downpath.=$nbsp.stripSlashes($downsofttemp).$ok; } $value=$all_downpath; return $value; } //替换下载在线地址模板 function RepDownOnlinePathTemp($add,$downsofttemp,$pj,$showdown_r,$ecms){ global $public_r,$level_r,$fun_r; if($ecms==0)//下载 { $downurl=$public_r[newsurl]."e/DownSys/DownSoft/?classid=$add[classid]&id=$add[id]&pathid=$pj"; } else//在线 { $downurl=$public_r[newsurl]."e/DownSys/play/?classid=$add[classid]&id=$add[id]&pathid=$pj"; } $downsofttemp=str_replace('[!--down.url--]',$downurl,$downsofttemp); $downsofttemp=str_replace('[!--down.name--]',$showdown_r[0],$downsofttemp); $downsofttemp=str_replace('[!--pathid--]',$pj,$downsofttemp); $downsofttemp=str_replace('[!--fen--]',$showdown_r[3],$downsofttemp); $group=$showdown_r[2]?$level_r[$showdown_r[2]][groupname]:$fun_r['hguest']; $downsofttemp=str_replace('[!--group--]',$group,$downsofttemp); if(strstr($downsofttemp,'[!--true.down.url--]')) { $durl=stripSlashes($showdown_r[1]); $durlr=ReturnDownQzPath($durl,$showdown_r[4]); $durl=$durlr['repath']; $downsofttemp=str_replace('[!--true.down.url--]',$durl,$downsofttemp); } return $downsofttemp; } //返回在线地址html代码 function ReturnOnlinepathHtml($add){ global $class_r,$public_r,$fun_r,$level_r; if(empty($add[onlinepath])) { return ''; } //每行显示条数 $down_num=$class_r[$add[classid]][online_num]?$class_r[$add[classid]][online_num]:1; //替换模板 $yonlinemovietemp=$public_r[onlinemovietemp]; $yonlinemovietemp=str_replace('[!--classid--]',$add[classid],$yonlinemovietemp); $yonlinemovietemp=str_replace('[!--id--]',$add[id],$yonlinemovietemp); $yonlinemovietemp=str_replace('[!--title--]',$add[title],$yonlinemovietemp); $yonlinemovietemp=str_replace('[!--news.url--]',$public_r[newsurl],$yonlinemovietemp); //地址 $all_downpath=''; $path_r=explode("\r\n",$add[onlinepath]); $count=count($path_r); for($pj=0;$pj<$count;$pj++) { $p=$pj+1; if($p%$down_num==0) { $ok='
'; } else { $ok=''; } //相同 if($count==$p) { $ok=''; } if($pj%$down_num==0||$pj==0) { $nbsp=''; } else { $nbsp='  '; } $showdown_r=explode('::::::',$path_r[$pj]); if(count($showdown_r)<2) { $showdown_r[0]=$p; } //模板 $downsofttemp=RepDownOnlinePathTemp($add,$yonlinemovietemp,$pj,$showdown_r,1); $all_downpath.=$nbsp.stripSlashes($downsofttemp).$ok; } $value=$all_downpath; return $value; } //返回图片集html代码 function ReturnMorepicpathHtml($add){ global $public_r,$fun_r; if(empty($add[morepic])) { return ''; } $line=$add[num]?$add[num]:1;//每行显示 $picpath=''; $path_r=explode("\r\n",$add[morepic]); for($pj=0;$pj"; } $width=$add[width]?" width='".$add[width]."'":'';//宽度 $height=$add[height]?" height='".$add[height]."'":'';//高度 $picpath.="".$name.""; //分割 if($p%$line==0) { $picpath.=''; } } if($p<>0) { $table=""; $table1="
"; $ys=$line-$p%$line; $dotr=0; for($j=0;$j<$ys&&$ys!=$line;$j++) { $dotr=1; $picpath.=''; } if($dotr==1) { $picpath.=''; } } $value=$table.$picpath.$table1; return $value; } //生成js function GetNewsJs($classid,$line,$sub,$showdate,$enews=0,$tempr){ global $empire,$public_r,$class_r,$class_tr,$emod_r,$etable_r,$dbtbpre,$eyh_r; if(empty($line)) { $line=10; } if(empty($sub)) { $sub=26; } //栏目 if($enews==0||$enews==1||$enews==2||$enews==9||$enews==12||$enews==15) { $where=$class_r[$classid][islast]?"classid='$classid'":ReturnClass($class_r[$classid][sonclass]); $tbname=$class_r[$classid][tbname]; $mid=$class_r[$classid][modid]; $yhid=$class_r[$classid][yhid]; } elseif($enews==25||$enews==26||$enews==27||$enews==28||$enews==29||$enews==30)//标题分类 { $where="ttid='$classid'"; $mid=$class_tr[$classid][mid]; $tbname=$emod_r[$mid][tbname]; $yhid=$class_tr[$classid][yhid]; } $allpath=eReturnTrueEcmsPath().'d/js/js/'; $ttpath=eReturnTrueEcmsPath().'d/js/class/tt'.$classid.'_'; $classpath=eReturnTrueEcmsPath().'d/js/class/class'.$classid.'_'; $query=''; $qand=' and '; if($enews==0)//栏目最新 { $query=' where '.$where; $order='newstime'; $newsjs=$classpath.'newnews.js'; $yhvar='bqnew'; } elseif($enews==1)//栏目热门 { $query=' where '.$where; $order="onclick"; $newsjs=$classpath.'hotnews.js'; $yhvar='bqhot'; } elseif($enews==2)//栏目推荐 { $query=' where '.$where.' and isgood>0'; $order='newstime'; $newsjs=$classpath.'goodnews.js'; $yhvar='bqgood'; } elseif($enews==9)//各栏目评论排行 { $query=' where '.$where; $order='plnum'; $newsjs=$classpath.'hotplnews.js'; $yhvar='bqpl'; } elseif($enews==12)//各栏目头条 { $query=' where '.$where.' and firsttitle>0'; $order='newstime'; $newsjs=$classpath.'firstnews.js'; $yhvar='bqfirst'; } elseif($enews==3)//所有最新 { $qand=' where '; $tbname=$public_r['tbname']; $order='newstime'; $newsjs=$allpath.'newnews.js'; $mid=$etable_r[$tbname][mid]; $yhvar='bqnew'; $yhid=$etable_r[$tbname][yhid]; } elseif($enews==4)//所有点击排行 { $qand=' where '; $tbname=$public_r['tbname']; $order='onclick'; $newsjs=$allpath.'hotnews.js'; $mid=$etable_r[$tbname][mid]; $yhvar='bqhot'; $yhid=$etable_r[$tbname][yhid]; } elseif($enews==5)//所有推荐 { $tbname=$public_r['tbname']; $query=' where isgood>0'; $order='newstime'; $newsjs=$allpath.'goodnews.js'; $mid=$etable_r[$tbname][mid]; $yhvar='bqgood'; $yhid=$etable_r[$tbname][yhid]; } elseif($enews==10)//所有评论排行 { $qand=' where '; $tbname=$public_r['tbname']; $order='plnum'; $newsjs=$allpath.'hotplnews.js'; $mid=$etable_r[$tbname][mid]; $yhvar='bqpl'; $yhid=$etable_r[$tbname][yhid]; } elseif($enews==13)//所有头条 { $tbname=$public_r['tbname']; $query=' where firsttitle>0'; $order='newstime'; $newsjs=$allpath.'firstnews.js'; $mid=$etable_r[$tbname][mid]; $yhvar='bqfirst'; $yhid=$etable_r[$tbname][yhid]; } elseif($enews==25)//标题分类最新 { $query=' where '.$where; $order='newstime'; $newsjs=$ttpath.'newnews.js'; $yhvar='bqnew'; } elseif($enews==26)//标题分类点击排行 { $query=' where '.$where; $order='onclick'; $newsjs=$ttpath.'hotnews.js'; $yhvar='bqhot'; } elseif($enews==27)//标题分类推荐 { $query=' where '.$where.' and isgood>0'; $order='newstime'; $newsjs=$ttpath.'goodnews.js'; $yhvar='bqgood'; } elseif($enews==28)//标题分类评论排行 { $query=' where '.$where; $order='plnum'; $newsjs=$ttpath.'hotplnews.js'; $yhvar='bqpl'; } elseif($enews==29)//标题分类头条 { $query=' where '.$where.' and firsttitle>0'; $order='newstime'; $newsjs=$ttpath.'firstnews.js'; $yhvar='bqfirst'; } $ret_r=ReturnReplaceListF($tempr[modid]);//字段 //优化 $yhadd=''; if(!empty($eyh_r[$yhid]['dojs'])) { $yhadd=ReturnYhSql($yhid,$yhvar); if(!empty($yhadd)) { $query.=$qand.$yhadd; $qand=' and '; } } $query='select '.ReturnSqlListF($mid).' from '.$dbtbpre.'ecms_'.$tbname.$query.' order by '.ReturnSetTopSql('js').$order.' desc limit '.$line; $sql=$empire->query($query); //取得js模板 $tempr[temptext]=str_replace('[!--news.url--]',$public_r[newsurl],$tempr[temptext]); $temp_r=explode("[!--empirenews.listtemp--]",$tempr[temptext]); $no=1; while($r=$empire->fetch($sql)) { $r[oldtitle]=$r[title]; //替换列表变量 $repvar=ReplaceListVars($no,$temp_r[1],$tempr[subnews],$tempr[subtitle],$tempr[showdate],$url,0,$r,$ret_r); $allnew.=$repvar; $no++; } $allnew="document.write(\"".addslashes(stripSlashes(str_replace("\r\n","",$temp_r[0].$allnew.$temp_r[2])))."\");"; WriteFiletext_n($newsjs,$allnew); } //生成自定义js function ReUserjs($jsr,$addpath){ global $empire,$public_r; $jsfilepath=eReturnTrueEcmsPath().'e/data/'.$jsr['jsfilename'];//maddpath DoFileMkDir($jsfilepath);//建目录 eAutodo_AddDo('ReUserjs',$jsr['jsid'],0,0,0,0);//moreportdo //取得js模板 $jstemptext=GetTheJstemp($jsr[jstempid]); $ret_r=ReturnReplaceListF($jstemptext[modid]);//字段 $jstemptext[temptext]=str_replace('[!--news.url--]',$public_r[newsurl],$jstemptext[temptext]); $temp_r=explode("[!--empirenews.listtemp--]",$jstemptext[temptext]); $query=$jsr[jssql]; $query=RepSqlTbpre($query); $sql=$empire->query($query); $no=1; while($r=$empire->fetch($sql)) { $r[oldtitle]=$r[title]; //替换列表变量 $repvar=ReplaceListVars($no,$temp_r[1],$jstemptext[subnews],$jstemptext[subtitle],$jstemptext[showdate],$url,0,$r,$ret_r); $allnew.=$repvar; $no++; } $allnew="document.write(\"".addslashes(stripSlashes(str_replace("\r\n","",$temp_r[0].$allnew.$temp_r[2])))."\");"; WriteFiletext_n($jsfilepath,$allnew); } //刷新信息列表 function ReListHtml($classid,$enews=0){ global $empire,$class_r,$dbtbpre; $classid=(int)$classid; if(!$classid) { printerror("NotChangeReClassid","history.go(-1)"); } $r=$empire->fetch1("select classtempid,islist from {$dbtbpre}enewsclass where classid='$classid'"); if($class_r[$classid][islast])//终极栏目 { ListHtml($classid,$ret_r,0); } else { if($r[islist]==1) { ListHtml($classid,$ret_r,3); } elseif($r[islist]==3) { ReClassBdInfo($classid); } else { $classtemp=$r[islist]==2?GetClassText($classid):GetClassTemp($r['classtempid']); NewsBq($classid,$classtemp,0,0); } } if($enews==1)//内部刷新 {return "";} insert_dolog("");//操作日志 printerror("ReClassidSuccess","history.go(-1)"); } //取得自定义页面模板 function GetPageTemp($tempid){ global $empire; $r=$empire->fetch1("select temptext from ".GetTemptb("enewspagetemp")." where tempid='$tempid'"); return $r['temptext']; } //替换自定义页面标签 function RepUserpageVar($pagetext,$title,$pagetitle,$pagekeywords,$pagedescription,$pagestr,$id){ $pagestr=str_replace("[!--pagetext--]",$pagetext,$pagestr); $pagestr=str_replace("[!--pagetitle--]",$pagetitle,$pagestr); $pagestr=str_replace("[!--pagekeywords--]",$pagekeywords,$pagestr); $pagestr=str_replace("[!--pagedescription--]",$pagedescription,$pagestr); $pagestr=str_replace("[!--pageid--]",$id,$pagestr); $pagestr=str_replace("[!--pagename--]",$title,$pagestr); return $pagestr; } //生成自定义页面 function ReUserpage($id,$pagetext,$path,$title="",$pagetitle,$pagekeywords,$pagedescription,$tempid=0){ global $public_r; if(empty($path)) { return ""; } $path=eReturnTrueEcmsPath().'e/data/'.$path; DoFileMkDir($path);//建目录 eAutodo_AddDo('ReUserpage',$id,0,0,0,0);//moreportdo if(empty($pagetitle)) { $pagetitle=$title; } //模板式 if($tempid) { $pagestr=GetPageTemp($tempid); } else { $pagestr=$pagetext; } $pagestr=InfoNewsBq("page".$id,$pagestr); $pagestr=RepUserpageVar($pagetext,$title,$pagetitle,$pagekeywords,$pagedescription,$pagestr,$id); $pagestr=str_replace("[!--news.url--]",$public_r['newsurl'],$pagestr); WriteFiletext($path,$pagestr); } //生成自定义信息列表 function ReUserlist($listr,$addpath){ $listr['addpath']=$addpath; DoFileMkDir(eReturnTrueEcmsPath().'e/data/'.$listr['filepath']);//建目录maddpath eAutodo_AddDo('ReUserlist',$listr['listid'],0,0,0,0);//moreportdo ListHtml($listr['listid'],$field,4,$listr); } //生成搜索文件 function GetSearch($mid=0){ global $empire,$public_r,$fun_r,$dbtbpre; //取得模板 $tr=$empire->fetch1("select searchtemp,searchjstemp,searchjstemp1 from ".GetTemptb("enewspubtemp")." limit 1"); //返回栏目搜索 $fcfile=eReturnTrueEcmsPath()."e/data/fc/ListEnews.php"; $fcjsfile=eReturnTrueEcmsPath()."e/data/fc/cmsclass.js"; if(file_exists($fcjsfile)&&file_exists($fcfile)) { $options=GetFcfiletext($fcjsfile); } else { $options=ShowClass_AddClass("","n",0,"|-",0,1); } //$options=""; $functions="function search_check(obj){if(obj.keyboard.value.length==0){alert('".$fun_r['EmptyKey']."');return false;}return true;}"; //横向搜索 $searchjstemp=ReplaceStemp($tr[searchjstemp],$options,$url,0,'','',''); $text2=$functions."document.write(\"".$searchjstemp."\");"; //纵向搜索 $searchjstemp1=ReplaceStemp($tr[searchjstemp1],$options,$url,0,'','',''); $text3.=$functions."document.write(\"".$searchjstemp1."\");"; //高级搜索 $url="".$fun_r['index']." > ".$fun_r['adsearch']." >";//导航栏 //搜索模板替换 $dbsearchtemp=ReplaceStemp($tr[searchtemp],$options,$url,0,$fun_r['adsearch'],$fun_r['adsearch'],$fun_r['adsearch'],1); $text4=$dbsearchtemp; //增加信息栏目 if($mid) { $options1=ShowClass_AddClass("","n",0,"|-",$mid,2); $addnews_class="document.write(\"".addslashes($options1)."\");"; $filename3=eReturnTrueEcmsPath()."d/js/js/addinfo".$mid.".js"; WriteFiletext_n($filename3,$addnews_class); } $filename=eReturnTrueEcmsPath()."d/js/js/search_news1.js"; WriteFiletext_n($filename,$text2); $filename1=eReturnTrueEcmsPath()."d/js/js/search_news2.js"; WriteFiletext_n($filename1,$text3); $filename2=eReturnTrueEcmsPath()."search/index".$public_r[searchtype]; WriteFiletext($filename2,$text4); } //替换搜索结果变量 function RepSearchRtemp($temptext,$url){ global $public_r; //热门文章 $temptext=str_replace("[!--hotnews--]","",$temptext); //点击排行 $temptext=str_replace("[!--newnews--]","",$temptext); //推荐 $temptext=str_replace("[!--goodnews--]","",$temptext); //评论排行 $temptext=str_replace("[!--hotplnews--]","",$temptext); //分页 $temptext=str_replace("[!--listpage--]","",$temptext); //关键字 $temptext=str_replace("[!--keyboard--]","",$temptext); //总记录数 $temptext=str_replace("[!--num--]","",$temptext); //导行条 $temptext=str_replace("[!--url--]",$url,$temptext); $temptext=str_replace("[!--newsurl--]",$public_r[newsurl],$temptext); return $temptext; } //生成评论文件 function GetPlTempPage($pltempid=0){ global $empire,$public_r,$fun_r,$dbtbpre; $pl_t_filename=eReturnTrueEcmsPath().'e/data/template/pltemp.txt'; $yplfiletemp=ReadFiletext($pl_t_filename); $yplfiletemp=str_replace("\\","\\\\",$yplfiletemp); //导航栏 $url="".$fun_r['index']." > [!--title--] > ".$fun_r['newspl']." >"; $pagetitle=" ".$fun_r['newspl']; $pagekey=$pagetitle; $pagedes=$pagetitle; $pr=$empire->fetch1("select plf from {$dbtbpre}enewspl_set limit 1"); //回车字段 $tobrf=','; $plfsql=$empire->query("select f from {$dbtbpre}enewsplf where ftype='VARCHAR' or ftype='TEXT' or ftype='MEDIUMTEXT' or ftype='LONGTEXT'"); while($plfr=$empire->fetch($plfsql)) { $tobrf.=$plfr[f].','; } $pr['pltobrf']=$tobrf; //取得评论页面模板 $where=$pltempid?" where tempid='$pltempid'":''; $ptsql=$empire->query("select tempid,temptext from ".GetTemptb("enewspltemp").$where); while($ptr=$empire->fetch($ptsql)) { $plfiletemp=$yplfiletemp; $pl_filename=eReturnTrueEcmsPath().'e/data/filecache/template/pl'.$ptr[tempid].'.php'; $pltemp=$ptr['temptext']; //头部变量 $pltemp=ReplaceSvars($pltemp,$url,0,$pagetitle,$pagekey,$pagedes,$add,1); $pltemp=RepSearchRtemp($pltemp,$url); //变量 $pltemp=str_replace("[!--title--]","",$pltemp); $pltemp=str_replace("[!--titleurl--]","",$pltemp); $pltemp=str_replace("[!--id--]","",$pltemp); $pltemp=str_replace("[!--classid--]","",$pltemp); $pltemp=str_replace("[!--plnum--]","",$pltemp); //评分 $pltemp=str_replace("[!--pinfopfen--]","",$pltemp); $pltemp=str_replace("[!--infopfennum--]","",$pltemp); //登录 $pltemp=str_replace("[!--key.url--]",$public_r[newsurl]."e/ShowKey/?v=pl",$pltemp); $pltemp=str_replace("[!--lusername--]","",$pltemp); $pltemp=str_replace("[!--lpassword--]","",$pltemp); //列表变量 $listtemp_r=explode("[!--empirenews.listtemp--]",$pltemp); $plfiletemp=str_replace("",$listtemp_r[0],$plfiletemp); $plfiletemp=str_replace("",$listtemp_r[2],$plfiletemp); //列表中间 $listtemp_center=str_replace("[!--plid--]","",$listtemp_r[1]); $listtemp_center=str_replace("[!--pltext--]","",$listtemp_center); $listtemp_center=str_replace("[!--pltime--]","",$listtemp_center); $listtemp_center=str_replace("[!--plip--]","",$listtemp_center); $listtemp_center=str_replace("[!--username--]","",$listtemp_center); $listtemp_center=str_replace("[!--userid--]","",$listtemp_center); $listtemp_center=str_replace("[!--includelink--]","",$listtemp_center); $listtemp_center=str_replace("[!--zcnum--]","",$listtemp_center); $listtemp_center=str_replace("[!--fdnum--]","",$listtemp_center); $listtemp_center=ReplacePlListVars($listtemp_center,$r,$pr,0); $plfiletemp=str_replace("",$listtemp_center,$plfiletemp); WriteFiletext($pl_filename,$plfiletemp); } } //替换评论字段 function ReplacePlListVars($temp,$r,$pr,$ecms=0){ $fr=explode(',',$pr['plf']); $count=count($fr)-1; for($i=1;$i<$count;$i++) { $f=$fr[$i]; if($ecms==1) { if(strstr($pr['pltobrf'],','.$f.',')) { $temp=str_replace('[!--'.$f.'--]',"",$temp); } else { $temp=str_replace('[!--'.$f.'--]',"",$temp); } } else { if(strstr($pr['pltobrf'],','.$f.',')) { $temp=str_replace('[!--'.$f.'--]',"",$temp); } else { $temp=str_replace('[!--'.$f.'--]',"",$temp); } } } return $temp; } //生成评论JS文件 function GetPlJsPage(){ global $empire,$public_r,$fun_r,$dbtbpre; $pl_t_filename=eReturnTrueEcmsPath()."e/data/template/pljstemp.txt"; $pl_filename=eReturnTrueEcmsPath()."e/pl/more/index.php"; $pltemp=ReadFiletext($pl_t_filename); $pr=$empire->fetch1("select plf from {$dbtbpre}enewspl_set limit 1"); //回车字段 $tobrf=','; $plfsql=$empire->query("select f from {$dbtbpre}enewsplf where ftype='VARCHAR' or ftype='TEXT' or ftype='MEDIUMTEXT' or ftype='LONGTEXT'"); while($plfr=$empire->fetch($plfsql)) { $tobrf.=$plfr[f].','; } $pr['pltobrf']=$tobrf; //取得评论JS模板 $pl_r=$empire->fetch1("select pljstemp from ".GetTemptb("enewspubtemp")." limit 1"); $pljstemp=str_replace("\r\n","",$pl_r['pljstemp']); $pljstemp=addslashes(stripSlashes($pljstemp)); $pljstemp=str_replace("[!--id--]","",$pljstemp); $pljstemp=str_replace("[!--classid--]","",$pljstemp); $pljstemp=str_replace("[!--news.url--]",$public_r[newsurl],$pljstemp); $listtemp_r=explode("[!--empirenews.listtemp--]",$pljstemp); $pltemp=str_replace("",$listtemp_r[0],$pltemp); $pltemp=str_replace("",$listtemp_r[2],$pltemp); //列表中间 $listtemp_center=str_replace("[!--plid--]","",$listtemp_r[1]); $listtemp_center=str_replace("[!--pltext--]","",$listtemp_center); $listtemp_center=str_replace("[!--pltime--]","",$listtemp_center); $listtemp_center=str_replace("[!--plip--]","",$listtemp_center); $listtemp_center=str_replace("[!--username--]","",$listtemp_center); $listtemp_center=str_replace("[!--userid--]","",$listtemp_center); $listtemp_center=str_replace("[!--zcnum--]","",$listtemp_center); $listtemp_center=str_replace("[!--fdnum--]","",$listtemp_center); $listtemp_center=ReplacePlListVars($listtemp_center,$r,$pr,1); $pltemp=str_replace("",$listtemp_center,$pltemp); WriteFiletext_n($pl_filename,$pltemp); } //生成留言板文件 function ReGbooktemp(){ global $empire,$public_r,$fun_r,$dbtbpre; $tfile=eReturnTrueEcmsPath()."e/data/template/gbooktemp.txt"; $file=eReturnTrueEcmsPath()."e/tool/gbook/index.php"; $gbtemp=ReadFiletext($tfile); //取得留言页面模板 $pr=$empire->fetch1("select gbooktemp from ".GetTemptb("enewspubtemp")." limit 1"); $url=""; $pagetitle=""; $pr['gbooktemp']=ReplaceSvars($pr['gbooktemp'],$url,0,$pagetitle,$pagetitle,$pagetitle,$add,1); $pr['gbooktemp']=RepSearchRtemp($pr['gbooktemp'],$url); $pr['gbooktemp']=str_replace("[!--bname--]","",$pr['gbooktemp']); $pr['gbooktemp']=str_replace("[!--bid--]","",$pr['gbooktemp']); $listtemp_r=explode("[!--empirenews.listtemp--]",$pr['gbooktemp']); $gbtemp=str_replace("",$listtemp_r[0],$gbtemp); $gbtemp=str_replace("",$listtemp_r[2],$gbtemp); //---列表中间 //处理回复 $restart=" "; $endstart=" "; $listtemp_center=str_replace("[!--start.regbook--]",$restart,$listtemp_r[1]); $listtemp_center=str_replace("[!--end.regbook--]",$endstart,$listtemp_center); $listtemp_center=str_replace("[!--lyid--]","",$listtemp_center); $listtemp_center=str_replace("[!--name--]","",$listtemp_center); $listtemp_center=str_replace("[!--email--]","",$listtemp_center); $listtemp_center=str_replace("[!--mycall--]","",$listtemp_center); $listtemp_center=str_replace("[!--lytime--]","",$listtemp_center); $listtemp_center=str_replace("[!--lytext--]","",$listtemp_center); $listtemp_center=str_replace("[!--retext--]","",$listtemp_center); $gbtemp=str_replace("",$listtemp_center,$gbtemp); WriteFiletext($file,$gbtemp); } //更新控制面板模板 function ReCptemp(){ global $empire,$public_r,$dbtbpre,$fun_r; $pr=$empire->fetch1("select cptemp from ".GetTemptb("enewspubtemp")." limit 1"); $url=""; $pagetitle=""; $temptext=ReplaceSvars($pr['cptemp'],$url,0,$pagetitle,$pagetitle,$pagetitle,$add,1); //生成头尾文件 $r=explode("[!--empirenews.template--]",$temptext); $file1=eReturnTrueEcmsPath()."e/data/template/cp_1.php"; WriteFiletext($file1,AddCheckViewTempCode().$r[0]); $file2=eReturnTrueEcmsPath()."e/data/template/cp_2.php"; WriteFiletext($file2,AddCheckViewTempCode().$r[1]); } //更新登陆状态模板 function ReLoginIframe(){ global $empire,$public_r,$dbtbpre; $tfile=eReturnTrueEcmsPath()."e/data/template/loginiframetemp.txt"; $loginiframetemp=ReadFiletext($tfile); $pr=$empire->fetch1("select loginiframe,loginjstemp from ".GetTemptb("enewspubtemp")." limit 1"); //框架登陆状态调用 $temptext=str_replace("[!--news.url--]",$public_r['newsurl'],$pr['loginiframe']); $temptext=str_replace("[!--userid--]","",$temptext); $temptext=str_replace("[!--username--]","",$temptext); $temptext=str_replace("[!--groupname--]","",$temptext); $temptext=str_replace("[!--money--]","",$temptext); $temptext=str_replace("[!--userdate--]","",$temptext); $temptext=str_replace("[!--havemsg--]","",$temptext); $temptext=str_replace("[!--userfen--]","",$temptext); $r=explode("[!--empirenews.template--]",$temptext); $text=str_replace("",$r[0],$loginiframetemp); $text=str_replace("",$r[1],$text); $file=eReturnTrueEcmsPath()."e/member/iframe/index.php"; WriteFiletext($file,$text); //JS登陆状态调用 $temptext=str_replace("[!--news.url--]",$public_r['newsurl'],$pr['loginjstemp']); $temptext=str_replace("[!--userid--]","",$temptext); $temptext=str_replace("[!--username--]","",$temptext); $temptext=str_replace("[!--groupname--]","",$temptext); $temptext=str_replace("[!--money--]","",$temptext); $temptext=str_replace("[!--userdate--]","",$temptext); $temptext=str_replace("[!--havemsg--]","",$temptext); $temptext=str_replace("[!--userfen--]","",$temptext); $r=explode("[!--empirenews.template--]",$temptext); $login="document.write(\"".addslashes(stripSlashes(str_replace("\r\n","",$r[0])))."\");"; $loginin="document.write(\"".addslashes(stripSlashes(str_replace("\r\n","",$r[1])))."\");"; $text=str_replace("",$login,$loginiframetemp); $text=str_replace("",$loginin,$text); $file=eReturnTrueEcmsPath()."e/member/login/loginjs.php"; WriteFiletext_n($file,$text); } //返回投票模板 function ReturnVoteTemp($tempid,$enews=0){ global $empire; $r=$empire->fetch1("select temptext from ".GetTemptb("enewsvotetemp")." where tempid='$tempid'"); if($enews) { $r[temptext]=str_replace("\r\n","",$r[temptext]); } return $r[temptext]; } //替换投票模板总体变量 function RepVoteTempAllvar($temptext,$r){ global $public_r; $action=$public_r['newsurl']."e/enews/index.php"; $temptext=str_replace("[!--vote.action--]",$action,$temptext); $temptext=str_replace("[!--title--]",$r[title],$temptext); $viewurl=$public_r[newsurl]."e/tool/vote/?voteid=".$r[voteid]; $temptext=str_replace("[!--vote.view--]",$viewurl,$temptext); $temptext=str_replace("[!--width--]",$r[width],$temptext); $temptext=str_replace("[!--height--]",$r[height],$temptext); $temptext=str_replace("[!--voteid--]",$r[voteid],$temptext); $temptext=str_replace("[!--id--]",$r[id],$temptext); $temptext=str_replace("[!--classid--]",$r[classid],$temptext); $temptext=str_replace("[!--news.url--]",$public_r[newsurl],$temptext); return $temptext; } //替换投票模板列表 function RepVoteTempListvar($temptext,$votebox,$votename){ $temptext=str_replace("[!--vote.box--]",$votebox,$temptext); $temptext=str_replace("[!--vote.name--]",$votename,$temptext); return $temptext; } //生成打印页面 function GetPrintPage($printtempid=0){ global $empire,$dbtbpre,$fun_r,$public_r; $file=eReturnTrueEcmsPath().'e/data/template/printtemp.txt'; $string=ReadFiletext($file); $url=""; $pagetitle=" ".$fun_r['PrintPage']; //取得评论页面模板 $where=$printtempid?" where tempid='$printtempid'":''; $ptsql=$empire->query("select tempid,temptext,showdate,modid from ".GetTemptb("enewsprinttemp").$where); while($ptr=$empire->fetch($ptsql)) { $ptr[temptext]=ReplaceSvars($ptr[temptext],$url,0,$pagetitle,$pagetitle,$pagetitle,$add,1); $printtemp=RepPrintTempV($ptr); $printtemp=str_replace("",$printtemp,$string); $truefile=eReturnTrueEcmsPath().'e/data/filecache/template/print'.$ptr[tempid].'.php'; WriteFiletext($truefile,$printtemp); } } //替换打印模板变量 function RepPrintTempV($tr){ global $empire,$dbtbpre,$fun_r,$public_r,$emod_r; $temptext=$tr['temptext']; $mid=$tr['modid']; //字段 $tempf=$emod_r[$mid]['tempf']; $fr=explode(',',$tempf); $fcount=count($fr)-1; for($i=1;$i<$fcount;$i++) { $f=$fr[$i]; $value="stripSlashes(\$r[".$f."])"; if($f=='newstime')//时间 { $value="date('".$tr[showdate]."',\$r[".$f."])"; } elseif($f=='title')//标题 { } else//正常字段 { if(!strstr($emod_r[$mid]['editorf'],','.$f.',')) { if(strstr($emod_r[$mid]['tobrf'],','.$f.','))//加br { $value='nl2br('.$value.')'; } if(!strstr($emod_r[$mid]['dohtmlf'],','.$f.','))//去除html { $value='RepFieldtextNbsp(ehtmlspecialchars('.$value.'))'; } } } $temptext=str_replace('[!--'.$f.'--]','',$temptext); } $temptext=str_replace("[!--id--]","",$temptext); $temptext=str_replace("[!--classid--]","",$temptext); $temptext=str_replace("[!--keyboard--]","",$temptext); $temptext=str_replace("[!--class.name--]","",$temptext); $temptext=str_replace("[!--bclass.id--]","",$temptext); $temptext=str_replace("[!--bclass.name--]","",$temptext); $temptext=str_replace('[!--ttid--]',"",$temptext); $temptext=str_replace('[!--tt.name--]',"",$temptext); $temptext=str_replace('[!--tt.url--]',"",$temptext); $temptext=str_replace("[!--userfen--]","",$temptext); $temptext=str_replace("[!--onclick--]","",$temptext); $temptext=str_replace("[!--totaldown--]","",$temptext); $temptext=str_replace("[!--plnum--]","",$temptext); $temptext=str_replace("[!--userid--]","",$temptext); $temptext=str_replace("[!--username--]","",$temptext); $temptext=str_replace("[!--titlelink--]","",$temptext); $temptext=str_replace("[!--titleurl--]","",$temptext); $temptext=str_replace("[!--url--]","",$temptext); return $temptext; } //更新下载页面模板 function GetDownloadPage(){ global $empire,$public_r,$dbtbpre,$fun_r; $pr=$empire->fetch1("select downpagetemp from ".GetTemptb("enewspubtemp")." limit 1"); $temptext=$pr['downpagetemp']; $url="".$fun_r['index']." >  > "; $pagetitle=" - "; $temptext=ReplaceSvars($temptext,$url,"",$pagetitle,$pagetitle,$pagetitle,$add,1); //分类 $temptext=str_replace("[!--classid--]","",$temptext); $temptext=str_replace("[!--class.name--]","",$temptext); $temptext=str_replace("[!--bclass.id--]","",$temptext); $temptext=str_replace("[!--bclass.name--]","",$temptext); //下载地址 $temptext=str_replace("[!--down.url--]","",$temptext); $temptext=str_replace("[!--true.down.url--]","",$temptext); $temptext=str_replace("[!--down.name--]","",$temptext); //下载权限 $temptext=str_replace("[!--fen--]","",$temptext); $temptext=str_replace("[!--group--]","",$temptext); //信息 $temptext=str_replace("[!--id--]","",$temptext); $temptext=str_replace("[!--titleurl--]","",$temptext); $temptext=str_replace("[!--title--]","",$temptext); $temptext=str_replace("[!--newstime--]","",$temptext); $temptext=str_replace("[!--titlepic--]","",$temptext); $temptext=str_replace("[!--keyboard--]","",$temptext); $temptext=str_replace("[!--userid--]","",$temptext); $temptext=str_replace("[!--username--]","",$temptext); $temptext=str_replace("[!--pathid--]","",$temptext); $temptext=str_replace("[!--totaldown--]","",$temptext); $temptext=str_replace("[!--onclick--]","",$temptext); $file=eReturnTrueEcmsPath()."e/data/template/downpagetemp.php"; WriteFiletext($file,AddCheckViewTempCode().$temptext); } //生成全站搜索文件 function ReSchAlltemp(){ global $empire,$public_r,$fun_r,$dbtbpre; $tfile=eReturnTrueEcmsPath()."e/data/template/schalltemp.txt"; $file=eReturnTrueEcmsPath()."e/sch/index.php"; $temp=ReadFiletext($tfile); //取得页面模板 $pr=$empire->fetch1("select schalltemp,schallsubnum,schalldate from ".GetTemptb("enewspubtemp")." limit 1"); $url=""; $pagetitle=$fun_r['SearchAllNav']; $pr['schalltemp']=ReplaceSvars($pr['schalltemp'],$url,0,$pagetitle,$pagetitle,$pagetitle,$add,1); $temp=str_replace("",$pr['schallsubnum'],$temp); $temp=str_replace("",$pr['schalldate'],$temp); $pr['schalltemp']=str_replace("[!--keyboard--]","",$pr['schalltemp']); $pr['schalltemp']=str_replace("[!--num--]","",$pr['schalltemp']); $pr['schalltemp']=str_replace("[!--listpage--]","",$pr['schalltemp']); $listtemp_r=explode("[!--empirenews.listtemp--]",$pr['schalltemp']); $temp=str_replace("",$listtemp_r[0],$temp); $temp=str_replace("",$listtemp_r[2],$temp); //---列表中间 $listtemp_center=str_replace("[!--no.num--]","",$listtemp_r[1]); $listtemp_center=str_replace("[!--titleurl--]","",$listtemp_center); $listtemp_center=str_replace("[!--id--]","",$listtemp_center); $listtemp_center=str_replace("[!--classid--]","",$listtemp_center); $listtemp_center=str_replace("[!--titlepic--]","",$listtemp_center); $listtemp_center=str_replace("[!--newstime--]","",$listtemp_center); $listtemp_center=str_replace("[!--title--]","",$listtemp_center); $listtemp_center=str_replace("[!--smalltext--]","",$listtemp_center); $temp=str_replace("",$listtemp_center,$temp); WriteFiletext($file,$temp); } //-------------- 用户区 ---------------------- //返回操作权限 function ReturnLeftLevel($groupid){ global $empire,$dbtbpre; if(empty($groupid)) {return "";} $groupid=(int)$groupid; $r=$empire->fetch1("select * from {$dbtbpre}enewsgroup where groupid='$groupid'"); return $r; } //password function DoEmpireCMSAdminPassword($password,$salt,$salt2){ $pw=md5($salt2.'E!m^p-i(r#e.C:M?S'.md5(md5($password).$salt).'d)i.g^o-d'.$salt); return $pw; } //返回操作权限 function CheckLevel($userid,$username,$classid,$enews){ global $empire,$dbtbpre; $userid=(int)$userid; $r=$empire->fetch1("select groupid,adminclass from {$dbtbpre}enewsuser where userid='$userid' limit 1"); //操作信息 if($enews=="news") { //操作所有栏目权限 $gr=$empire->fetch1("select doall,doselfinfo,doaddinfo,doeditinfo,dodelinfo,docheckinfo,dogoodinfo,dodocinfo,domoveinfo,domustcheck,docheckedit,docanhtml,doinfofile from {$dbtbpre}enewsgroup where groupid='$r[groupid]'"); if(empty($gr[doall])) { $e_r=explode("|".$classid."|",$r[adminclass]); if(count($e_r)!=2) {printerror("NotNewsLevel","history.go(-1)");} } $gr['add_adminclass']=$r['adminclass']; return $gr; } else { //用户组 $gr=$empire->fetch1("select * from {$dbtbpre}enewsgroup where groupid='$r[groupid]'"); $enews="do".$enews; if(empty($gr[$enews])) { printerror("NotLevel","history.go(-1)"); } $gr['add_adminclass']=$r['adminclass']; return $gr; } } //验证设置权限 function CheckDoLevel($lur,$groupid,$userclass,$username,$ecms=0){ $ret=0; if(strstr($groupid,','.$lur[groupid].',')) { $ret=1; } elseif(strstr($userclass,','.$lur[classid].',')) { $ret=1; } elseif(stristr($username,','.$lur[username].',')) { $ret=1; } if($ecms==0&&$ret==0) { printerror('NotLevel','history.go(-1)'); } return $ret; } //验证固定用户权限 function CheckAndUsernamesLevel($level,$id,$userid,$username,$groupid){ global $empire,$dbtbpre; $id=(int)$id; if(!$id) { printerror('ErrorUrl','history.go(-1)'); } if($level=='dozt')//专题 { $getquery="select ztid,usernames from {$dbtbpre}enewszt where ztid='$id'"; $id_field='ztid'; $users_field='usernames'; } else { printerror('ErrorUrl','history.go(-1)'); } $getr=$empire->fetch1($getquery); if(!$getr[$id_field]) { printerror('ErrorUrl','history.go(-1)'); } $gr=$empire->fetch1("select groupid,".$level." from {$dbtbpre}enewsgroup where groupid='$groupid'"); if(!$gr['groupid']) { printerror('NotLevel','history.go(-1)'); } if($gr[$level]) { return 2; } if(!stristr(','.$getr[$users_field].',',','.$username.',')) { printerror('NotLevel','history.go(-1)'); } return 1; } //是否登陆 function is_login($uid=0,$uname='',$urnd=''){ global $empire,$public_r,$dbtbpre; $userid=$uid?$uid:getcvar('loginuserid',1); $username=$uname?$uname:getcvar('loginusername',1); $rnd=$urnd?$urnd:getcvar('loginrnd',1); $userid=(int)$userid; $username=RepPostVar($username); $rnd=RepPostVar($rnd); if(!$userid||!$username||!$rnd) { printerror("NotLogin","index.php"); } $groupid=(int)getcvar('loginlevel',1); $adminstyle=(int)getcvar('loginadminstyleid',1); if(!strstr($public_r['adminstyle'],','.$adminstyle.',')) { $adminstyle=$public_r['defadminstyle']?$public_r['defadminstyle']:1; } $truelogintime=(int)getcvar('truelogintime',1); $cdbdata=0; //COOKIE验证 $cdbdata=getcvar('ecmsdodbdata',1)?1:0; DoChECookieRnd($userid,$username,$rnd,'',$cdbdata,$groupid,$adminstyle,$truelogintime); //db $adminr=$empire->fetch1("select userid,groupid,classid,userprikey,uprnd from {$dbtbpre}enewsuser where userid='$userid' and username='".$username."' and rnd='".$rnd."' and checked=0 limit 1"); if(!$adminr['userid']) { printerror("SingleUser","index.php"); } DoECheckAndAuthRnd($userid,$username,$rnd,$adminr['userprikey'],$cdbdata,$groupid,$adminstyle,$truelogintime); //登陆超时 $logintime=getcvar('logintime',1); if($logintime) { if(time()-$logintime>$public_r['exittime']*60) { esetcookie("loginrnd","",0,1); printerror("LoginTime","index.php"); } esetcookie("logintime",time(),0,1); } if(getcvar('eloginlic',1)<>"empirecmslic") { printerror("NotLogin","index.php"); } $ur[userid]=$userid; $ur[username]=$username; $ur[rnd]=$rnd; $ur[groupid]=$adminr[groupid]; $ur[adminstyleid]=(int)$adminstyle; $ur[classid]=$adminr[classid]; return $ur; } function is_login_ebak($userid,$username,$rnd){ global $empire,$public_r; $userid=(int)$userid; $username=RepPostVar($username); $dodbdata=getcvar('ecmsdodbdata',1); if(!$userid||!$username) { printerror("NotLogin","index.php"); } if($dodbdata!="empirecms") { printerror("NotLogin","index.php"); } $rnd=RepPostVar($rnd); //COOKIE验证 $cdbdata=$dodbdata?1:0; $groupid=(int)getcvar('loginlevel',1); $adminstyle=(int)getcvar('loginadminstyleid',1); $truelogintime=(int)getcvar('truelogintime',1); DoChECookieRnd($userid,$username,$rnd,'',$cdbdata,$groupid,$adminstyle,$truelogintime); //超时 $logintime=getcvar('logintime',1); if($logintime) { if(time()-$logintime>$public_r['exittime']*60) { esetcookie("loginrnd","",0,1); printerror("LoginTime","index.php"); } esetcookie("logintime",time(),0,1); } $ur[userid]=$userid; $ur[username]=$username; $ur[rnd]=$rnd; $ur[groupid]=$groupid; $ur[adminstyleid]=$adminstyle; $ur[classid]=0; return $ur; } //是否登陆 function is_login_other($userid,$username,$rnd){ global $empire,$public_r,$dbtbpre; $userid=(int)$userid; $username=RepPostVar($username); $rnd=RepPostVar($rnd); if(!$userid||!$username||!$rnd) { printerror("NotLogin","index.php"); } $adminstyle=1; //db $adminr=$empire->fetch1("select userid,groupid,classid,userprikey from {$dbtbpre}enewsuser where userid='$userid' and username='".$username."' and rnd='".$rnd."' and checked=0 limit 1"); if(!$adminr['userid']) { printerror("NotLogin","index.php"); } $ur[userid]=$userid; $ur[username]=$username; $ur[rnd]=$rnd; $ur[groupid]=$adminr[groupid]; $ur[adminstyleid]=(int)$adminstyle; $ur[classid]=$adminr[classid]; return $ur; } //设置加密验证 function DoECreateOtherRnd($userid,$username,$rnd,$ckoi=0){ global $ecms_config; $ip=$ecms_config['esafe']['ckhloginip']==0?'127.0.0.1':egetip(); $otherinfo=$ckoi==1?DoECkOtherInfo():'empire.cms'; $r['otherrndtime']=time(); $r['otherrndtwo']=make_password(12); $r['otherrndpass']=md5(md5($rnd.'-empirecms.2002!check.other-'.$ecms_config['cks']['ckrndtwo']).'-'.$ip.'empire.cms'.'-'.$otherinfo.'-'.$userid.'-'.$r['otherrndtime'].'-'.$username.'db.check.rnd'.'-'.$rnd.'-phome'.$r['otherrndtwo']); return $r; } //验证加密验证 function DoECheckOtherRnd($userid,$username,$rnd,$loginecmsotherpass,$loginecmsothertime,$loginecmsotherrndtwo,$ckoi=0,$outtime=1800){ global $ecms_config; if(!$loginecmsotherpass||!$loginecmsothertime) { printerror("NotLogin","index.php"); } $loginecmsothertime=(int)$loginecmsothertime; $todaytime=time(); if($loginecmsothertime+$outtime<$todaytime||$loginecmsothertime>$todaytime) { printerror("NotLogin","index.php"); } $ip=$ecms_config['esafe']['ckhloginip']==0?'127.0.0.1':egetip(); $otherinfo=$ckoi==1?DoECkOtherInfo():'empire.cms'; $ecmsckpass=md5(md5($rnd.'-empirecms.2002!check.other-'.$ecms_config['cks']['ckrndtwo']).'-'.$ip.'empire.cms'.'-'.$otherinfo.'-'.$userid.'-'.$loginecmsothertime.'-'.$username.'db.check.rnd'.'-'.$rnd.'-phome'.$loginecmsotherrndtwo); if('dg'.$ecmsckpass<>'dg'.$loginecmsotherpass) { printerror("NotLogin","index.php"); } } //返回SESSION验证 function DoESessionRnd(){ global $ecms_config; if(empty($ecms_config['esafe']['ckhsession'])) { return ''; } $sessval=make_password(27); $_SESSION['ecmsckhspass']=$sessval; return $sessval; } function ReESessionRnd(){ global $ecms_config; if(empty($ecms_config['esafe']['ckhsession'])) { return ''; } if(!$_SESSION['ecmsckhspass']) { printerror('NotLogin','index.php'); } return $_SESSION['ecmsckhspass']; } function DelESessionRnd(){ global $ecms_config; if(empty($ecms_config['esafe']['ckhsession'])) { return ''; } $_SESSION['ecmsckhspass']=''; unset($_SESSION['ecmsckhspass']); session_destroy(); } //返回其他验证信息 function DoECkOtherInfo(){ $otherinfo=$_SERVER['HTTP_USER_AGENT']; return $otherinfo; } //COOKIE加密 function DoECookieRnd($userid,$username,$rnd,$userkey,$dbdata,$groupid,$adminstyle,$truelogintime){ global $ecms_config; $ip=$ecms_config['esafe']['ckhloginip']==0?'127.0.0.1':egetip(); $otherinfo=DoECkOtherInfo(); //session $sessval=DoESessionRnd(); $ecmsckpass=md5(md5($rnd.$ecms_config['esafe']['ecookiernd']).'-'.$ip.'-'.$otherinfo.'-'.$userid.'-'.$username.'-'.$dbdata.$rnd.$groupid.'-'.$adminstyle.$sessval); esetcookie("loginecmsckpass",$ecmsckpass,0,1); DoECreatFileRnd($userid,$username,$rnd,$dbdata,$groupid,$adminstyle,$truelogintime,$ip,$sessval); DoECreatAndAuthRnd($userid,$username,$rnd,$userkey,$dbdata,$groupid,$adminstyle,$truelogintime,$ip,$sessval); } function DoChECookieRnd($userid,$username,$rnd,$userkey,$dbdata,$groupid,$adminstyle,$truelogintime){ global $ecms_config; $ip=$ecms_config['esafe']['ckhloginip']==0?'127.0.0.1':egetip(); $otherinfo=DoECkOtherInfo(); $sessval=ReESessionRnd(); $ecmsckpass=md5(md5($rnd.$ecms_config['esafe']['ecookiernd']).'-'.$ip.'-'.$otherinfo.'-'.$userid.'-'.$username.'-'.$dbdata.$rnd.$groupid.'-'.$adminstyle.$sessval); if('dg'.$ecmsckpass<>'dg'.getcvar('loginecmsckpass',1)) { printerror("NotLogin","index.php"); } DoECheckFileRnd($userid,$username,$rnd,$dbdata,$groupid,$adminstyle,$truelogintime,$ip,$sessval); //ehash hCheckEcmsEHash(); } function DelECookieRnd(){ esetcookie("loginecmsckpass",'',0,1); } //文件认证 //返回文件验证DEF变量字符 function hAdminLoginFileInfoDefStr($str){ $defstr='dg'.md5('e-c,m@s'.md5($str.'-p.h!o-m5e').'-e.m-p!i8re'); return $defstr; } //返回用户缓存信息 function hReturnAdminLoginFileInfo($userid,$username,$rnd,$dbdata,$groupid,$adminstyle,$truelogintime,$ip,$sessval){ global $ecms_config; $adminlogins=''; $ernd=make_password(27); $erndtwo=make_password(20); $erndadd=make_password(32); $ehash=make_password(20); $ehashname=$ecms_config['esafe']['ckhashename'].make_password(5); $rhash=make_password(12); $rhashname=$ecms_config['esafe']['ckhashrname'].make_password(5); $userid=(int)$userid; $dbdata=(int)$dbdata; $defhash=$ehashname.'='.$ehash.'||'.$rhashname.'='.$rhash.'||'.$ernd.'||'.$erndtwo; $ernddefine=make_password(22); $ernddefinemd5=hAdminLoginFileInfoDefStr($ernddefine); $eckdiyvar='emec'.abc_make_password(8); $eckdiyval=make_password(18); define('EmpireCMSHDefHash',$defhash); $adminlogins.="'".$userid."', 'ernd'=>'".addslashes($ernd)."', 'erndtwo'=>'".addslashes($erndtwo)."', 'erndadd'=>'".addslashes($erndadd)."', 'ehash'=>'".addslashes($ehash)."', 'ehashname'=>'".addslashes($ehashname)."', 'rhash'=>'".addslashes($rhash)."', 'rhashname'=>'".addslashes($rhashname)."', 'eckdiyvar'=>'".addslashes($eckdiyvar)."', 'eckdiyval'=>'".addslashes($eckdiyval)."', 'edbdata'=>'".$dbdata."'); ?>"; esetcookie("loginecmsckfrnd",$ernd,0,1); esetcookie("loginecmsckfdef",$ernddefine,0,1); esetcookie($eckdiyvar,$eckdiyval,0,1); return $adminlogins; } //文件缓存内容验证 function hCheckAadminLoginFileInfo(){ global $ecms_config,$ecms_adminloginr; if(!$ecms_adminloginr['ernd']||$ecms_adminloginr['ernd']<>getcvar('loginecmsckfrnd',1)) { printerror("NotLogin","index.php"); } if(!defined('EcmsAdminLogin')) { printerror("NotLogin","index.php"); } if(!defined('EcmsAdminLoginDEF')) { printerror("NotLogin","index.php"); } $ckstr=getcvar('loginecmsckfdef',1); if(EcmsAdminLoginDEF==''||EcmsAdminLoginDEF=='EcmsAdminLoginDEF'||!$ckstr) { printerror("NotLogin","index.php"); } $ckdefstr=hAdminLoginFileInfoDefStr($ckstr); if(EcmsAdminLoginDEF<>$ckdefstr) { printerror("NotLogin","index.php"); } $diyck=getcvar($ecms_adminloginr['eckdiyvar'],1); if(!$diyck||!$ecms_adminloginr['eckdiyval']||$ecms_adminloginr['eckdiyval']<>$diyck) { printerror("NotLogin","index.php"); } } function DelECookieAdminLoginFileInfo(){ global $ecms_config,$ecms_adminloginr; esetcookie("loginecmsckfrnd",'',0,1); esetcookie("loginecmsckfdef",'',0,1); esetcookie($ecms_adminloginr['eckdiyvar'],'',0,1); } //来源Hash验证 //验证rhash内容 function hCheckEcmsRHash(){ global $ecms_config,$ecms_adminloginr; if($ecms_config['esafe']['ckhash']==2)//关闭HASH模式 { return ''; } //刺猬模式 $rhashvar=$ecms_adminloginr['rhashname']; $rhash=$ecms_adminloginr['rhash']; if($_GET[$rhashvar]&&$_GET[$rhashvar]==$rhash) { } elseif($_POST[$rhashvar]&&$_POST[$rhashvar]==$rhash) { } else { printerror("FailHash","history.go(-1)"); } //spurl if($ecms_config['esafe']['ckfromurl']>3) { hCheckSpFromUrl(); } } //验证ehash内容 function hCheckEcmsEHash(){ global $ecms_config,$ecms_adminloginr; if($ecms_config['esafe']['ckhash']==2)//关闭HASH模式 { return ''; } if($ecms_config['esafe']['ckhash']==1)//刺猬模式 { return ''; } //金刚模式 $ehashvar=$ecms_adminloginr['ehashname']; $ehash=$ecms_adminloginr['ehash']; if($_GET[$ehashvar]&&$_GET[$ehashvar]==$ehash) { } elseif($_POST[$ehashvar]&&$_POST[$ehashvar]==$ehash) { } else { printerror("FailHash","history.go(-1)"); } } //随机ehash附加form function hReturnEcmsHashStrAddRnd($ern=2){ global $ecms_config,$ecms_adminloginr; $num=EcmsRandInt(1,$ern); $addrnd=''; $rndstr=uniqid(microtime()).EcmsRandInt(); for($i=1;$i<=$num;$i++) { $str=md5($rndstr.$i); if($i%2==0) { $rndname='rhash_'.substr($str,22,4); $rndvalue=substr($str,4,12); } else { $rndname='ehash_'.substr($str,25,4); $rndvalue=substr($str,2,20); } $addrnd.=''; } return $addrnd; } //返回hash变量 function hReturnEcmsHashStrAll(){ global $ecms_config,$ecms_adminloginr; //刺猬模式 $rhashvar=$ecms_adminloginr['rhashname']; $rhash=$ecms_adminloginr['rhash']; //金刚模式 $ehashvar=$ecms_adminloginr['ehashname']; $ehash=$ecms_adminloginr['ehash']; //返回 if($ecms_config['esafe']['ckhash']==2)//关闭HASH模式 { $hashhrefr['href']=''; $hashhrefr['whhref']=''; $hashhrefr['form']=''; $hashhrefr['ehref']=''; $hashhrefr['whehref']=''; $hashhrefr['eform']=''; } elseif($ecms_config['esafe']['ckhash']==1)//刺猬模式 { $hashhrefr['href']='&'.$rhashvar.'='.$rhash; $hashhrefr['whhref']='?'.$rhashvar.'='.$rhash; $hashhrefr['form']=hReturnEcmsHashStrAddRnd(2).''.hReturnEcmsHashStrAddRnd(2); $hashhrefr['ehref']=''; $hashhrefr['whehref']=''; $hashhrefr['eform']=''; } else//金刚模式 { $ehaddrnd=hReturnEcmsHashStrAddRnd(); $ehaddrnd2=hReturnEcmsHashStrAddRnd(2); $ehaddrnd3=hReturnEcmsHashStrAddRnd(2); $hashhrefr['href']='&'.$ehashvar.'='.$ehash.'&'.$rhashvar.'='.$rhash; $hashhrefr['whhref']='?'.$ehashvar.'='.$ehash.'&'.$rhashvar.'='.$rhash; $hashhrefr['form']=$ehaddrnd.''.$ehaddrnd2.''.$ehaddrnd3; $hashhrefr['ehref']='&'.$ehashvar.'='.$ehash; $hashhrefr['whehref']='?'.$ehashvar.'='.$ehash; $hashhrefr['eform']=$ehaddrnd.''.$ehaddrnd2; } return $hashhrefr; } //返回hash变量(href) function hReturnEcmsHashStrHref($wh=0){ $hashhrefr=hReturnEcmsHashStrAll(); return $wh?$hashhrefr['whhref']:$hashhrefr['href']; } //返回hash变量(ehref) function hReturnEcmsHashStrHref2($wh=0){ $hashhrefr=hReturnEcmsHashStrAll(); return $wh?$hashhrefr['whehref']:$hashhrefr['ehref']; } //返回hash变量(form) function hReturnEcmsHashStrForm($wh=0){ $hashhrefr=hReturnEcmsHashStrAll(); return $hashhrefr['form']; } //返回hash变量(eform) function hReturnEcmsHashStrForm2($wh=0){ $hashhrefr=hReturnEcmsHashStrAll(); return $hashhrefr['eform']; } //返回hash变量(def) function hReturnEcmsHashStrDef($wh=0,$ecms='ehref'){ if($ecms_config['esafe']['ckhash']==2)//关闭HASH模式 { return ''; } $str=''; $fh=$wh?'?':'&'; $hr=explode('||',EmpireCMSHDefHash); if($ecms=='href') { if($ecms_config['esafe']['ckhash']==1)//刺猬模式 { $str=$fh.$hr[1]; } else { $str=$fh.$hr[0].'&'.$hr[1]; } } elseif($ecms=='ehref') { $str=$fh.$hr[0]; } return $str; } //返回hash变量(erndtwo) function hReturnEcmsHashErndDef($ecms=0){ $str=''; $hr=explode('||',EmpireCMSHDefHash); if($ecms==0) { $str=$hr[2]; } else { $str=$hr[3]; } return $str; } //文件认证处理 function DoECreatFileRnd($userid,$username,$rnd,$dbdata,$groupid,$adminstyle,$truelogintime,$ip,$sessval){ global $ecms_config; $file=ECMS_PATH.'e/data/adminlogin/user'.$userid.'_'.md5(md5($username.'-empirecms!check.file'.$truelogintime.'-'.$rnd.$ecms_config['esafe']['ecookiernd']).'-'.$ip.'-'.$userid.'-'.$rnd.$adminstyle.'-'.$groupid.'-'.$dbdata.$sessval).'.php'; $filetext=hReturnAdminLoginFileInfo($userid,$username,$rnd,$dbdata,$groupid,$adminstyle,$truelogintime,$ip,$sessval); WriteFiletext_n($file,$filetext); } function DoECheckFileRnd($userid,$username,$rnd,$dbdata,$groupid,$adminstyle,$truelogintime,$ip,$sessval){ global $ecms_config,$ecms_adminloginr; $file=ECMS_PATH.'e/data/adminlogin/user'.$userid.'_'.md5(md5($username.'-empirecms!check.file'.$truelogintime.'-'.$rnd.$ecms_config['esafe']['ecookiernd']).'-'.$ip.'-'.$userid.'-'.$rnd.$adminstyle.'-'.$groupid.'-'.$dbdata.$sessval).'.php'; if(!file_exists($file)) { printerror('NotLogin','index.php'); } include($file); hCheckAadminLoginFileInfo(); /* $filetime=filemtime($file); if($filetime>$truelogintime) { printerror('NotLogin','index.php'); } */ } //切换访问端后台 function Moreport_eChangeMoreportAdmin($pid,$ecms,$douserid,$dousername){ global $empire,$dbtbpre,$public_r,$ecms_config; CheckLevel($douserid,$dousername,$classid,"chmoreport");//操作权限 $pid=(int)$pid; if(!$pid) { printerror("EmptyMoreportPid","history.go(-1)"); } $pr=$empire->fetch1("select * from {$dbtbpre}enewsmoreport where pid='$pid'"); if(!$pr['pid']||!$pr['purl']) { printerror("EmptyMoreportPid","history.go(-1)"); } if(!$pr['ppath']||!file_exists($pr['ppath'].'e/config/config.php')) { printerror("EmptyMoreportPid","history.go(-1)"); } if($pr['isclose']||$pr['openadmin']==2) { printerror("ChangeMoreportIsClose","history.go(-1)"); } if($pid==$ecms_config['sets']['selfmoreportid']||($pid==1&&!$ecms_config['sets']['selfmoreportid'])) { printerror("IsSelfMoreportPid","history.go(-1)"); } //文件名 $userid=intval(getcvar('loginuserid',1)); $username=RepPostVar(getcvar('loginusername',1)); $rnd=RepPostVar(getcvar('loginrnd',1)); $dbdata=getcvar('ecmsdodbdata',1)?1:0; $groupid=(int)getcvar('loginlevel',1); $adminstyle=(int)getcvar('loginadminstyleid',1); $truelogintime=(int)getcvar('truelogintime',1); $ip=$ecms_config['esafe']['ckhloginip']==0?'127.0.0.1':egetip(); $otherinfo=DoECkOtherInfo(); $sessval=ReESessionRnd(); $userloginfile='user'.$userid.'_'.md5(md5($username.'-empirecms!check.file'.$truelogintime.'-'.$rnd.$ecms_config['esafe']['ecookiernd']).'-'.$ip.'-'.$userid.'-'.$rnd.$adminstyle.'-'.$groupid.'-'.$dbdata.$sessval).'.php'; $fromfile=ECMS_PATH.'e/data/adminlogin/'.$userloginfile; $tofile=$pr['ppath'].'e/data/adminlogin/'.$userloginfile; if(!file_exists($fromfile)) { printerror("EmptyMoreportPid","history.go(-1)"); } @copy($fromfile,$tofile); if(!file_exists($tofile)) { printerror("MoreportPidFailPath","history.go(-1)"); } if($ecms==0) { DelFiletext($fromfile); } $selfurl=eReturnSelfPage(0); $gourl=substr($pr['purl'],0,-1).str_replace('/enews.php','/admin.php',$selfurl).hReturnEcmsHashStrHref2(1); printerror("ChangeMoreportAdminSuccess",$gourl); } function DoEDelFileRnd($userid){ $path=ECMS_PATH.'e/data/adminlogin/'; $hand=@opendir($path); while($file=@readdir($hand)) { if($file=='.'||$file=='..') { continue; } if(stristr($file,'user'.$userid.'_')) { DelFiletext($path.$file); } } } //附加码认证 function DoECreatAndAuthRnd($userid,$username,$rnd,$userkey,$dbdata,$groupid,$adminstyle,$truelogintime,$ip,$sessval){ global $empire,$dbtbpre,$ecms_config; $andauth=md5(md5($rnd.'-'.$username.'-empirecms!check.andauth'.$truelogintime.'-'.$ecms_config['esafe']['ecookiernd'].$userkey).$sessval.'-'.$ip.'-'.$userid.$rnd.'-'.$adminstyle.'-'.$groupid.$username.'-'.$dbdata); DoEDelAndAuthRnd($userid); $empire->query("replace into {$dbtbpre}enewsuserloginck(userid,andauth) values('$userid','$andauth');"); } function DoECheckAndAuthRnd($userid,$username,$rnd,$userkey,$dbdata,$groupid,$adminstyle,$truelogintime){ global $empire,$dbtbpre,$ecms_config; $anduser_r=$empire->fetch1("select andauth from {$dbtbpre}enewsuserloginck where userid='$userid'"); if(!$anduser_r['andauth']) { printerror('NotLogin','index.php'); } $ip=$ecms_config['esafe']['ckhloginip']==0?'127.0.0.1':egetip(); //$otherinfo=DoECkOtherInfo(); $sessval=ReESessionRnd(); $ckandauth=md5(md5($rnd.'-'.$username.'-empirecms!check.andauth'.$truelogintime.'-'.$ecms_config['esafe']['ecookiernd'].$userkey).$sessval.'-'.$ip.'-'.$userid.$rnd.'-'.$adminstyle.'-'.$groupid.$username.'-'.$dbdata); if('dg'.$anduser_r['andauth']<>'dg'.$ckandauth) { printerror('NotLogin','index.php'); } } function DoEDelAndAuthRnd($userid){ global $empire,$dbtbpre; $empire->query("delete from {$dbtbpre}enewsuserloginck where userid='$userid'"); } //写入操作日志 function insert_dolog($doing,$pubid=0){ global $empire,$enews,$phome,$logininid,$loginin,$ecms_config,$dbtbpre; if($ecms_config['esafe']['thedolog']) { return ""; } if(empty($doing)) {$doing="---";} $doing=str_replace('
','[e.cms.br]',$doing); $doing=eDoRepPostComStr($doing); $doing=str_replace('[e.cms.br]','
',$doing); $doing=addslashes(stripSlashes($doing)); //ip $logip=egetip(); $ipport=egetipport(); $logtime=date("Y-m-d H:i:s"); if(empty($enews)) {$enews=$phome;} $enews=RepPostVar($enews); $pubid=RepPostVar($pubid); $loginin=RepPostVar($loginin); $sql=$empire->query("insert into {$dbtbpre}enewsdolog(username,logip,logtime,enews,doing,pubid,ipport) values('$loginin','$logip','$logtime','$enews','$doing','$pubid','$ipport');"); } //返回安全提问问题 function ReturnHLoginQuestionStr($userid,$username,$question,$answer){ $pass=md5(md5('-#20empire27#-'.$question.'-empirecms-'.$userid.'-www.phome.net-'.$answer.'-wm-').'-dg2002-'.$answer.'-wm_chief-'.$userid.'-wangmeng-'); return $pass; } //-------------- 远程发布区 ---------------------- //返回FTP目录或文件绝对地址 function FtpRTruePath($ftppath,$path){ $truepath=$ftppath.'/'.$path; return $truepath; } //目录转向 function FtpChPath($e,$r){ $path=$r[ftppath].'/e/ftp'; $e->fChdir($path); return ''; } //上传ftp目录 function FtpTranPath($ftpid,$ldir,$hdir){ $r=ReturnFtpInfo($ftpid); $e=new EmpireCMSFTP(); $e->fconnect($r[ftphost],$r[ftpport],$r[ftpusername],$r[ftppassword],$r[ftppath],$r[ftpssl],$r[ftppasv],$r[ftpmode],$r[ftpouttime]); FtpChPath($e,$r); //上传目录 $e->ftp_copy($ldir,$hdir); $e->fExit(); } //删除ftp目录 function FtpDelPath($ftpid,$dir){ $r=ReturnFtpInfo($ftpid); $e=new EmpireCMSFTP(); $e->fconnect($r[ftphost],$r[ftpport],$r[ftpusername],$r[ftppassword],$r[ftppath],$r[ftpssl],$r[ftppasv],$r[ftpmode],$r[ftpouttime]); FtpChPath($e,$r); //删除目录 $e->ftp_rmAll($dir); $e->fExit(); } //删除ftp文件 function FtpDelFile($ftpid,$fr){ $r=ReturnFtpInfo($ftpid); $e=new EmpireCMSFTP(); $e->fconnect($r[ftphost],$r[ftpport],$r[ftpusername],$r[ftppassword],$r[ftppath],$r[ftpssl],$r[ftppasv],$r[ftpmode],$r[ftpouttime]); FtpChPath($e,$r); //删除文件 $e->fMoreDelFile($fr); $e->fExit(); } //上传文件 function FtpTranFile($ftpid,$fr,$fr1){ $r=ReturnFtpInfo($ftpid); $e=new EmpireCMSFTP(); $e->fconnect($r[ftphost],$r[ftpport],$r[ftpusername],$r[ftppassword],$r[ftppath],$r[ftpssl],$r[ftppasv],$r[ftpmode],$r[ftpouttime]); FtpChPath($e,$r); //上传文件 $e->fMoreTranFile($fr1,$fr); $e->fExit(); } //建立ftp目录 function FtpMkdir($ftpid,$pr,$mod){ $r=ReturnFtpInfo($ftpid); $e=new EmpireCMSFTP(); $e->fconnect($r[ftphost],$r[ftpport],$r[ftpusername],$r[ftppassword],$r[ftppath],$r[ftpssl],$r[ftppasv],$r[ftpmode],$r[ftpouttime]); FtpChPath($e,$r); for($i=0;$ifChdir($pr[$i])) { $e->fMkdir($pr[$i]); if($mod) { $e->fChmoddir($mod,$pr[$i]); } } } $e->fExit(); } //返回ftp信息 function ReturnFtpInfo($ftpid){ global $empire,$dbtbpre; $r=$empire->fetch1("select * from {$dbtbpre}enewspublic limit 1"); return $r; } //初使化发布任务 function AddPostUrlData($postdata,$userid,$username){ global $empire,$fun_r,$dbtbpre; $count=count($postdata); if(empty($count)) {printerror("NotPostData","history.go(-1)");} //操作权限 CheckLevel($userid,$username,$classid,"postdata"); $e="!!!"; $rnd=md5(uniqid(microtime()).EcmsRandInt()); for($i=0;$i<$count;$i++) { $r=explode($e,$postdata[$i]); $r[1]=(int)$r[1]; $r[0]=AddAddsData($r[0]); $sql=$empire->query("insert into {$dbtbpre}enewspostdata(rnd,postdata,ispath) values('$rnd','$r[0]','$r[1]');"); } $line=(int)$_POST['line']; if($line==0) { $line=10; } echo $fun_r[AddPostDataSuccess].""; exit(); } //远程发布 function PostUrlData($start,$rnd,$userid,$username){ global $empire,$fun_r,$dbtbpre,$incftp; $rnd=RepPostVar($rnd); if(empty($rnd)) {printerror("FailCX","history.go(-1)");} //操作权限 CheckLevel($userid,$username,$classid,"postdata"); //链接FTP if(empty($incftp)) { @include(ECMS_PATH."e/class/ftp.php"); } $pr=ReturnFtpInfo($ftpid); $e=new EmpireCMSFTP(); $e->fconnect($pr[ftphost],$pr[ftpport],$pr[ftpusername],$pr[ftppassword],$pr[ftppath],$pr[ftpssl],$pr[ftppasv],$pr[ftpmode],$pr[ftpouttime]); FtpChPath($e,$pr); $line=(int)$_GET['line'];//每10个为一组 $start=(int)$start; $b=0; $sql=$empire->query("select postid,postdata,ispath from {$dbtbpre}enewspostdata where rnd='$rnd' and postid>$start order by postid limit ".$line); while($r=$empire->fetch($sql)) { $b=1; $newstart=$r[postid]; //文件 if($r[ispath]) { $fr=explode(",",$r[postdata]); for($i=0;$ifTranFile(FtpRTruePath($pr[ftppath],$fr[$i]),ECMS_PATH.$fr[$i]); } } //目录 else { $e->ftp_copy(ECMS_PATH.$r[postdata],FtpRTruePath($pr[ftppath],$r[postdata])); } } $e->fExit(); if(empty($b)) { $sql=$empire->query("delete from {$dbtbpre}enewspostdata where rnd='$rnd'"); //操作日志 insert_dolog(""); printerror("PostDataSuccess","PostUrlData.php".hReturnEcmsHashStrHref2(1)); } echo $fun_r[OnePostDataSuccess].""; exit(); } //测试FTP function CheckFtpConnect($ftphost,$ftpport,$ftpusername,$ftppassword,$ftppath,$ftpssl=0,$pasv=0,$tranmode=0,$timeout=0){ if(!defined('InEmpireCMSFtp')) { include(ECMS_PATH.'e/class/ftp.php'); } $eftp=new EmpireCMSFTP(); $result=$eftp->fconnect($ftphost,$ftpport,$ftpusername,$ftppassword,$ftppath,$ftpssl,$pasv,$tranmode,$timeout,1); if($result=='HostFail') { printerror('FtpHostFail','',8); } elseif($result=='UserFail') { printerror('FtpUserFail','',8); } elseif($result=='PathFail') { printerror('FtpPathFail','',8); } else { printerror('FtpConnectSuccess','',8); } $eftp->fExit(); } //-------------- 模型区 ---------------------- //复制表 function CopyEcmsTb($otb,$tb){ global $empire; $usql=$empire->query("SET SQL_QUOTE_SHOW_CREATE=1;");//设置引号 $r=$empire->fetch1("SHOW CREATE TABLE `$otb`;");//数据表结构 $create=str_replace("\"","\\\"",$r[1]); $create=str_replace($otb,$tb,$create); $empire->query($create); } //建立数据表 function SetCreateTable($sql,$dbcharset) { global $ecms_config; $type=strtoupper(preg_replace("/^\s*CREATE TABLE\s+.+\s+\(.+?\).*(ENGINE|TYPE)\s*=\s*([a-z]+?).*$/isU", "\\2", $sql)); $type = in_array($type, array('MYISAM', 'HEAP')) ? $type : 'MYISAM'; return preg_replace("/^\s*(CREATE TABLE\s+.+\s+\(.+?\)).*$/isU", "\\1", $sql). ($ecms_config['db']['dbver']>='4.1'&&$dbcharset ? " ENGINE=$type DEFAULT CHARSET=$dbcharset" : " TYPE=$type"); } //组合存文本 function TogSaveTxtF($ecms=0){ global $empire,$dbtbpre; $savesql=$empire->query("select f,tbname from {$dbtbpre}enewsf where savetxt=1"); $savef=','; while($saver=$empire->fetch($savesql)) { $savef.=$saver[tbname].'.'.$saver[f].','; } $empire->query("update {$dbtbpre}enewspublic set savetxtf='$savef' limit 1"); if($ecms==0) { GetConfig(); } } //返回附件字段 function ReturnMFileF($enter,$tbname,$tid,$fform="file"){ global $empire; $record=""; $field=""; if($tid) { $a=" and tid='$tid'"; } $f=","; $sql=$empire->query("select f from ".$tbname." where fform='$fform'".$a); while($r=$empire->fetch($sql)) { if(strstr($enter,$field.$r[f].$record)) { $f.=$r[f].","; } } return $f; } //执行字段函数 function DoFFun($mid,$f,$value,$isadd=1,$isq=0){ global $empire,$dbtbpre,$emod_r; if($isq==1)//前台 { $dofun=$isadd==1?$emod_r[$mid]['qadddofunf']:$emod_r[$mid]['qeditdofunf']; } else//后台 { $dofun=$isadd==1?$emod_r[$mid]['adddofunf']:$emod_r[$mid]['editdofunf']; } if(!strstr($dofun,'||'.$f.'!#!')) { return $value; } $dfr=explode('||'.$f.'!#!',$dofun); $dfr1=explode('||',$dfr[1]); $r=explode('##',$dfr1[0]); if($r[0]) { $fun=$r[0]; $value=$fun($mid,$f,$isadd,$isq,$value,$r[1]); } return $value; } //执行模型函数 function DoMFun($mid,$classid,$id,$isadd=1,$isq=0){ global $empire,$dbtbpre,$emod_r; if($isq==1)//前台 { if($isadd==1)//增加 { $dofun=$emod_r[$mid]['qmaddfun']; } else//修改 { $dofun=$emod_r[$mid]['qmeditfun']; } } else//后台 { if($isadd==1)//增加 { $dofun=$emod_r[$mid]['maddfun']; } else//修改 { $dofun=$emod_r[$mid]['meditfun']; } } if(!$dofun) { return ''; } $r=explode('##',$dofun); if(!$r[0]) { return ''; } $fun=$r[0]; $value=$fun($mid,$isadd,$isq,$classid,$id,$r[1]); } //取得字段名 function ChGetFname($mid,$f){ global $empire,$dbtbpre,$emod_r; $r=$empire->fetch1("select fname from {$dbtbpre}enewsf where f='$f' and tid='".$emod_r[$mid]['tid']."' limit 1"); return $r[fname]?$r[fname]:$f; } //验证必填项 function ChMustAddF($mid,$f,$value){ global $empire,$dbtbpre,$emod_r; if(strstr($emod_r[$mid]['mustqenterf'],','.$f.',')) { if(!trim($value)) { $GLOBALS['msgmustf']=ChGetFname($mid,$f); printerror("EmptyMustF","history.go(-1)"); } } } //验证唯一项 function ChIsOnlyAddF($mid,$id,$f,$value,$isq=0){ global $empire,$dbtbpre,$emod_r; $mid=(int)$mid; if(strstr($emod_r[$mid]['onlyf'],','.$f.',')) { $id=(int)$id; $and=''; if($id) { $and=" and id<>$id"; } $value=RepPostStr($value); //已审核 $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_".$emod_r[$mid]['tbname']." where ".$f."='".addslashes($value)."'".$and." limit 1"); //未审核 if(empty($num)) { $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_".$emod_r[$mid]['tbname']."_check where ".$f."='".addslashes($value)."'".$and." limit 1"); } if($num) { $GLOBALS['msgisonlyf']=ChGetFname($mid,$f); if($isq==1) { printerror("ReIsOnlyF","history.go(-1)",1); } else { printerror("ReIsOnlyF","history.go(-1)"); } } } } //数据同步 function SameDataAddF($id,$classid,$mid,$f,$value){ global $empire,$public_r,$dbtbpre,$emod_r,$emod_pubr; if(strstr($emod_pubr['linkfields'],','.$emod_r[$mid]['tbname'].'.'.$f.'|')) { $index_r=$empire->fetch1("select checked from {$dbtbpre}ecms_".$emod_r[$mid]['tbname']."_index where id='$id' limit 1"); //返回表 $infotb=empty($index_r['checked'])?$dbtbpre.'ecms_'.$emod_r[$mid]['tbname'].'_check':$dbtbpre.'ecms_'.$emod_r[$mid]['tbname']; $value=addslashes($value); $r=$empire->fetch1("select ".$f." from ".$infotb." where id='$id' limit 1"); if($r[$f]<>$value) { $tbr=ReturnSameDataTb($emod_r[$mid]['tbname'],$f); $ltbname=$tbr[0]; $lf=$tbr[1]; if($ltbname&&$lf) { $empire->query("update {$dbtbpre}ecms_".$ltbname." set ".$lf."='$value' where ".$lf."='$r[$f]'"); } } } } //返回数据同步表与字段名 function ReturnSameDataTb($tbname,$f){ global $public_r,$emod_pubr; $expr=explode(','.$tbname.'.'.$f.'|',$emod_pubr['linkfields']); $expr1=explode('|',$expr[0]); $count=count($expr1)-1; $tbr=explode('.',$expr1[$count]); return $tbr; } //自定义字段返回模板字段处理 function doReturnAddTempf($temp){ $record=""; $field=""; $r=explode($record,$temp); $count=count($r); $str=','; for($i=0;$i<$count-1;$i++) { $r1=explode($field,$r[$i]); $str.=$r1[1].","; } if($str==',,') { $str=','; } return $str; } //处理多值字段 function DoFieldMoreValue($f,$add,$ecms=0){ $rvarname=$f.'_1'; $count=count($add[$rvarname]); if(empty($count)) { return ''; } //变量 $mvnumvar='mvnum_'.$f; $mvmustvar='mvmust_'.$f; $mvidvarname=$f.'_mvid'; $mvid=$add[$mvidvarname]; $mvdelidvarname=$f.'_mvdelid'; $mvdelid=$add[$mvdelidvarname]; //处理 $mvnum=(int)$add[$mvnumvar]; if($mvnum<1||$mvnum>50) { $mvnum=1; } $mvmust=(int)$add[$mvmustvar]; if($mvmust<1) { $mvmust=0; } if($ecms==1) { $delcount=count($mvdelid); } $rexp='||||||'; $fexp='::::::'; $rstr=''; $rstrexp=''; for($i=0;$i<$count;$i++) { //删除 if($ecms==1) { $del=0; for($d=0;$d<$delcount;$d++) { if($mvdelid[$d]==$mvid[$i]) { $del=1; break; } } if($del) {continue;} } $fstr=''; $fstrexp=''; $fstrempty=0; for($j=0;$j<$mvnum;$j++) { $k=$j+1; $fsvarname=$f.'_'.$k; $fsval=$add[$fsvarname][$i]; $fsval=str_replace($rexp,'',$fsval); $fsval=str_replace($fexp,'',$fsval); if(CheckValEmpty($fsval)) { if($k==$mvmust) { break; $fstrempty=1; } } $fstr.=$fstrexp.$fsval; $fstrexp=$fexp; } if(empty($fstr)||$fstrempty) { continue; } $rstr.=$rstrexp.$fstr; $rstrexp=$rexp; } return $rstr; } //返回多值字段数据 function ReturnMoreValueAddF($add,$r,$mid,$f,$ecms=0){ global $public_r,$emod_r; $val=$r; if(strstr($emod_r[$mid]['morevaluef'],'|'.$f.',')) { $varname=$f.'_1'; if(is_array($add[$varname])) { $val=DoFieldMoreValue($f,$add,$ecms); } else { $val=''; } } return $val; } //组合复选框数据 function ReturnCheckboxAddF($r,$mid,$f){ global $public_r,$emod_r; $val=$r; if(is_array($r)&&strstr($emod_r[$mid]['checkboxf'],','.$f.',')) { $val=''; $count=count($r); for($i=0;$i<$count;$i++) { $val.=$r[$i].'|'; } if($val) { $val='|'.$val; } } return $val; } //信息字段值处理 function DohFieldValue($mid,$f,$val,$gr){ global $public_r,$emod_r,$lur; $val=RepPhpAspJspcodeText($val); if($gr['docanhtml']) { return $val; } if(strstr($emod_r[$mid]['editorf'],','.$f.','))//编辑器 { $val=ClearNewsBadCode($val); } else { $val=eDoRepPostComStr($val,1);//替换html } return $val; } //返回自定义字段 function ReturnAddF($add,$modid,$userid,$username,$do=0,$rdata=0,$ch=0){ global $empire,$public_r,$dbtbpre,$emod_r,$lur; $ugroupid=(int)$lur['groupid']; $ugr=ReturnLeftLevel($ugroupid); if($do==0||$do==1) { //导入gd处理文件 if($add['mark']||$add['getfirsttitlespic']||$add['mcreatespic']) { include_once(ECMS_PATH.'e/class/gd.php'); } } $ret_r['tb']=$emod_r[$modid]['deftb']; $pagef=$emod_r[$modid]['pagef']; $r=explode(',',$emod_r[$modid][enter]); $count=count($r)-1; if(empty($do))//增加 { //数据库操作 for($i=1;$i<$count;$i++) { $f=$r[$i]; if($f=='special.field'||!strstr($emod_r[$modid]['canaddf'],','.$f.',')) { continue; } $add[$f]=ReturnCheckboxAddF($add[$f],$modid,$f);//复选框 $add[$f]=ReturnMoreValueAddF($add,$add[$f],$modid,$f,$do);//多值 $value=RepPhpAspJspcodeText($add[$f]); if($f=='newstime')//时间 { $value=empty($value)?time():to_time($value); } elseif($f=="morepic")//图片集 { $value=ReturnMorepicpath($add['msmallpic'],$add['mbigpic'],$add['mpicname'],$add['mdelpicid'],$add['mpicid'],$add,$add['mpicurl_qz'],0,0,$public_r['filedeftb']); } elseif($f=="downpath")//下载地址 { $value=ReturnDownpath($add['downname'],$add['downpath'],$add['delpathid'],$add['pathid'],$add['downuser'],$add['fen'],$add['thedownqz'],$add,$add['foruser'],$add['downurl_qz'],0); } elseif($f=="onlinepath")//在线地址 { $value=ReturnDownpath($add['odownname'],$add['odownpath'],$add['odelpathid'],$add['opathid'],$add['odownuser'],$add['ofen'],$add['othedownqz'],$add,$add['oforuser'],$add['onlineurl_qz'],0); } elseif($f=="smalltext")//简介 { if(!trim($value)) { $value=SubSmalltextVal($add[newstext],$public_r[smalltextlen]);//截取新闻内容 } } elseif($f=='infoip')//ip { $value=egetip(); } elseif($f=='infoipport')//ip端口 { $value=egetipport(); } elseif($f=='infozm')//字母 { $value=$value?$value:GetInfoZm($add[title]); } $value=eDoInfoTbfToQj($emod_r[$modid]['tbname'],$f,$value,$public_r['toqjf']); //处理函数 $value=DoFFun($modid,$f,$value,1,0); $modispagef=$pagef==$f?1:0; $value=RepTempvarPostStrT($value,$modispagef); if($pagef!=$f) { $value=RepTempvarPostStr($value); } //检测必填字段 if($ch==1&&empty($add['titleurl'])) { ChMustAddF($modid,$f,$value); ChIsOnlyAddF($modid,0,$f,$value,0);//唯一值 } $value=DohFieldValue($modid,$f,$value,$ugr); $value=hRepPostStr2($value); //编辑器 if($f=="newstext") { //远程保存 $value=addslashes(CopyImg(stripSlashes($value),$add[copyimg],$add[copyflash],$add[classid],$add[qz_url],$username,$add['id'],$add['filepass'],$add['mark'],$public_r['filedeftb'])); //替换关键字和字符 $value=DoReplaceKeyAndWord($value,$add['dokey'],$add['classid']); //自动分页 if($add[autopage]&&!strstr($value,"[!--empirenews.page--]")) { if(empty($add[autosize])) {$add[autosize]=5000;} $value=AutoDoPage($value,$add[autosize]); } } //存文本 if($emod_r[$modid]['savetxtf']&&$f==$emod_r[$modid]['savetxtf']) { //建立目录 $thetxtfile=GetFileMd5(); $truevalue=MkDirTxtFile(date("Y/md"),$thetxtfile); //写放文件 EditTxtFieldText($truevalue,$value); $value=$truevalue; } if(strstr($emod_r[$modid]['tbdataf'],','.$f.','))//副表 { $ret_r['datafields'].=",".$f; $ret_r['datavalues'].=",'".addslashes($value)."'"; } else//主表 { $ret_r['fields'].=",".$f; $ret_r['values'].=",'".addslashes($value)."'"; } } } elseif($do==1)//修改 { //数据库操作 for($i=1;$i<$count;$i++) { $f=$r[$i]; if($f=="special.field"||!strstr($emod_r[$modid]['caneditf'],','.$f.',')) { continue; } $add[$f]=ReturnCheckboxAddF($add[$f],$modid,$f);//复选框 $add[$f]=ReturnMoreValueAddF($add,$add[$f],$modid,$f,$do);//多值 $value=RepPhpAspJspcodeText($add[$f]); if($f=='newstime')//时间 { $value=empty($value)?time():to_time($value); } elseif($f=="morepic")//图片集 { $value=ReturnMorepicpath($add['msmallpic'],$add['mbigpic'],$add['mpicname'],$add['mdelpicid'],$add['mpicid'],$add,$add['mpicurl_qz'],1,0,intval($add['fstb'])); } elseif($f=="downpath")//下载地址 { $value=ReturnDownpath($add['downname'],$add['downpath'],$add['delpathid'],$add['pathid'],$add['downuser'],$add['fen'],$add['thedownqz'],$add,$add['foruser'],$add['downurl_qz'],1); } elseif($f=="onlinepath")//在线地址 { $value=ReturnDownpath($add['odownname'],$add['odownpath'],$add['odelpathid'],$add['opathid'],$add['odownuser'],$add['ofen'],$add['othedownqz'],$add,$add['oforuser'],$add['onlineurl_qz'],1); } elseif($f=="smalltext")//简介 { if(!trim($value)) { $value=SubSmalltextVal($add[newstext],$public_r[smalltextlen]);//截取新闻内容 } } elseif($f=='infozm')//字母 { $value=$value?$value:GetInfoZm($add[title]); } $value=eDoInfoTbfToQj($emod_r[$modid]['tbname'],$f,$value,$public_r['toqjf']); //处理函数 $value=DoFFun($modid,$f,$value,0,0); $modispagef=$pagef==$f?1:0; $value=RepTempvarPostStrT($value,$modispagef); if($pagef!=$f) { $value=RepTempvarPostStr($value); } //检测必填字段 if($ch==1&&empty($add['titleurl'])) { ChMustAddF($modid,$f,$value); ChIsOnlyAddF($modid,$add[id],$f,$value,0);//唯一值 } $value=DohFieldValue($modid,$f,$value,$ugr); $value=hRepPostStr2($value); //数据同步 SameDataAddF($add[id],$add[classid],$modid,$f,$value); //内容 if($f=="newstext") { //远程保存 $value=addslashes(CopyImg(stripSlashes($value),$add[copyimg],$add[copyflash],$add[classid],$add[qz_url],$username,$add['id'],$add['filepass'],$add['mark'],intval($add['fstb']))); //自动分页 if($add[autopage]&&!strstr($value,"[!--empirenews.page--]")) { if(empty($add[autosize])) {$add[autosize]=5000;} $value=AutoDoPage($value,$add[autosize]); } } //存文本 if($emod_r[$modid]['savetxtf']&&$f==$emod_r[$modid]['savetxtf']) { //建立目录 $newstexttxt_r=explode("/",$add[newstext_url]); $thetxtfile=$newstexttxt_r[2]; eCheckStrType(1,$newstexttxt_r[0],1); eCheckStrType(1,$newstexttxt_r[1],1); eCheckStrType(3,$thetxtfile,1); $truevalue=MkDirTxtFile($newstexttxt_r[0]."/".$newstexttxt_r[1],$thetxtfile); //写放文件 EditTxtFieldText($truevalue,$value); $value=$truevalue; } if(strstr($emod_r[$modid]['tbdataf'],','.$f.','))//副表 { $ret_r['datafields'].=",".$f; $ret_r['datavalues'].=",".$f."='".addslashes($value)."'"; } else//主表 { $ret_r['fields'].=",".$f; $ret_r['values'].=",".$f."='".addslashes($value)."'"; } } } elseif($do==8)//同步修改 { //数据库操作 for($i=1;$i<$count;$i++) { $f=$r[$i]; if($f=='special.field') { continue; } $value=$add[$f]; //存文本 if($emod_r[$modid]['savetxtf']&&$f==$emod_r[$modid]['savetxtf']) { //建立目录 $newstexttxt_r=explode("/",$add[newstext_url]); $thetxtfile=$newstexttxt_r[2]; eCheckStrType(1,$newstexttxt_r[0],1); eCheckStrType(1,$newstexttxt_r[1],1); eCheckStrType(3,$thetxtfile,1); $truevalue=MkDirTxtFile($newstexttxt_r[0]."/".$newstexttxt_r[1],$thetxtfile); //写放文件 EditTxtFieldText($truevalue,$value); $value=$truevalue; } if(strstr($emod_r[$modid]['tbdataf'],','.$f.','))//副表 { $ret_r['datafields'].=",".$f; $ret_r['datavalues'].=",".$f."='".StripAddsData($value)."'"; } else//主表 { $ret_r['fields'].=",".$f; $ret_r['values'].=",".$f."='".StripAddsData($value)."'"; } } } elseif($do==9)//复制 { //数据库操作 for($i=1;$i<$count;$i++) { $f=$r[$i]; if($f=='special.field') { continue; } $value=$add[$f]; //存文本 if($emod_r[$modid]['savetxtf']&&$f==$emod_r[$modid]['savetxtf']) { //建立目录 $thetxtfile=GetFileMd5(); $truevalue=MkDirTxtFile(date("Y/md"),$thetxtfile); //写放文件 EditTxtFieldText($truevalue,$value); $value=$truevalue; } if(strstr($emod_r[$modid]['tbdataf'],','.$f.','))//副表 { $ret_r['datafields'].=",".$f; $ret_r['datavalues'].=",'".StripAddsData($value)."'"; } else//主表 { $ret_r['fields'].=",".$f; $ret_r['values'].=",'".StripAddsData($value)."'"; } } } elseif($do==10)//归档 { //数据库操作 for($i=1;$i<$count;$i++) { $f=$r[$i]; if($f=='special.field') { continue; } $value=$add[$f]; if(strstr($emod_r[$modid]['tbdataf'],','.$f.','))//副表 { $ret_r['datafields'].=",".$f; $ret_r['datavalues'].=",'".StripAddsData($value)."'"; } else//主表 { $ret_r['fields'].=",".$f; $ret_r['values'].=",'".StripAddsData($value)."'"; } } } return $ret_r; } //返回采集字段 function ReturnAddCj($add,$cj,$do=0){ global $empire; $record=""; $field=""; $record_r=explode($record,$cj); for($i=0;$i$public_r['filesize']*1024) { return $r; } //上传 $r=DoTranFile($_FILES[$varname]['tmp_name'][$i],$_FILES[$varname]['name'][$i],$_FILES[$varname]['type'][$i],$_FILES[$varname]['size'][$i],$classid); //------------------------写入数据库 $r[filesize]=(int)$r[filesize]; $classid=(int)$classid; if(empty($picname)) { $picname=$r[filename]; } else { $picname=$addname.$picname; } $picname=RepPostStr($picname); $id=(int)$id; $cjid=0; if(!$id) { $cjid=(int)$add['filepass']; } eInsertFileTable($r[filename],$r[filesize],$r[filepath],$loginin,$classid,$picname,$type,$id,$cjid,$public_r[fpath],0,0,$fstb); return $r; } //远程保存 else { if(empty($msavepic)) { return $r; } if(empty($picurl)) { return $r; } //----------------取得文件类型 $filetype=GetFiletype($picurl); //允许上传类型 if(CheckSaveTranFiletype($filetype)) { return $r; } if(!strstr($public_r['filetype'],"|".$filetype."|")) { return $r; } //图片文件 if(!strstr($ecms_config['sets']['tranpicturetype'],','.$filetype.',')) { return $r; } //保存 $r=DoTranUrl($picurl,$classid); if($r['tran']) { //记录数据库 //变量处理 $r[filesize]=(int)$r[filesize]; $classid=(int)$classid; $r[type]=(int)$r[type]; if(empty($picname)) { $picname=$r[filename]; } else { $picname=$addname.$picname; } $picname=RepPostStr($picname); $id=(int)$id; $cjid=0; if(!$id) { $cjid=(int)$add['filepass']; } eInsertFileTable($r[filename],$r[filesize],$r[filepath],$loginin,$classid,$picname,$type,$id,$cjid,$public_r[fpath],0,0,$fstb); return $r; } return $r; } } //入库时远程保存 function LoadInSaveMorepicFile($morepic,$msavepic,$classid,$id,$add,$modtype=0,$fstb=1){ if(empty($morepic)||!$msavepic) { return $morepic; } $f_exp="::::::"; $r_exp="\r\n"; $returnstr=""; $r=explode($r_exp,$morepic); $countr=count($r); for($i=0;$i<$countr;$i++) { $r1=explode($f_exp,$r[$i]); //小图 $smpr=SaveMorepicFile("msmallpfile",$msavepic,0,$r1[0],$r1[2],$classid,$id,$add,$modtype,$fstb); $spic=$smpr[url]; //大图 if($r1[0]!=$r1[1]) { $bmpr=SaveMorepicFile("mbigpfile",$msavepic,0,$r1[1],$r1[2],$classid,$id,$add,$modtype,$fstb); $bpic=$bmpr[url]; } else { $bpic=$spic; } if($spic) { $returnstr.=$spic.$f_exp.$bpic.$f_exp.$r1[2].$r_exp; } } //去掉最后的字符 $returnstr=substr($returnstr,0,strlen($returnstr)-2); return $returnstr; } //---------图片地址组合 function ReturnMorepicpath($smallpic,$bigpic,$picname,$delpicid,$picid,$add,$downurl,$down=0,$modtype=0,$fstb=1){ global $loginin,$logininid; $f_exp="::::::"; $r_exp="\r\n"; $returnstr=""; $downurl=str_replace($f_exp,"",$downurl); $downurl=str_replace($r_exp,"",$downurl); $add[msavepic]=(int)$add[msavepic]; $add[classid]=(int)$add[classid]; $add[id]=(int)$add[id]; $add[filepass]=(int)$add[filepass]; $modtype=(int)$modtype; $fstb=(int)$fstb; $logininid=(int)$logininid; $loginin=RepPostVar($loginin); //增加信息 if(empty($down)) { for($i=0;$iquery("select classid,classname,wburl,listdt,classurl,classpath from {$dbtbpre}enewsclass where bclassid=0 and showclass=0 order by myorder,classid".$limit); while($r=$empire->fetch($sql)) { $classurl=sys_ReturnBqClassUrl($r); if($navs) { $fh=$navfh; } $navs.=$fh."".$r[classname].""; } return $navs; } //生成配置文件 function GetConfig($domod=0){ $filename=eReturnTrueEcmsPath()."e/config/config.php"; $exp='//-------EmpireCMS.Public.Cache-------'; $text=ReadFiletext($filename); $r=explode($exp,$text); if($r[0]=='') { return false; } $r[1]=GetPubCache(); if($domod==1) { $r[2]=GetModCache(); } $setting=$r[0].$exp.$r[1].$exp.$r[2].$exp.$r[3]; WriteFiletext_n($filename,$setting); } //更新公共缓存 function GetPubCache(){ global $empire,$dbtbpre; //扩展变量 $pvstring=''; $pvsql=$empire->query("select myvar,varvalue from {$dbtbpre}enewspubvar where tocache=1"); while($pvr=$empire->fetch($pvsql)) { $pvstring.=",'add_".$pvr['myvar']."'=>'".addslashes($pvr['varvalue'])."'"; } //多访问端 $ckhavemoreport=0; $mpnum=$empire->gettotal("select count(*) as total from {$dbtbpre}enewsmoreport"); if($mpnum>1) { $ckhavemoreport=1; } //公共变量 $r=$empire->fetch1("select * from {$dbtbpre}enewspublic limit 1"); $tr=$empire->fetch1("select downsofttemp,onlinemovietemp,listpagetemp from ".GetTemptb("enewspubtemp")." limit 1"); $fsr=$empire->fetch1("select purl from {$dbtbpre}enewspostserver where ptype=1 limit 1"); $plr=$empire->fetch1("select * from {$dbtbpre}enewspl_set limit 1"); $paddr=$empire->fetch1("select * from {$dbtbpre}enewspublicadd limit 1"); $agcacher=eGetCacheMAdmin(); $memberconnectnum=$empire->gettotal("select count(*) as total from {$dbtbpre}enewsmember_connect_app where isclose=0"); $GLOBALS['public_r']['newsurl']=$r['newsurl']; $r[filedeftb]=1; $plr[pldeftb]=1; $classnavs=GetClassNavCache($r[classnavline],$r[classnavfh]); $checkdorepstr=ReturnCheckDoRep(); $setting.=" //------------e_public \$public_r=array('sitename'=>'".addslashes($r[sitename])."', 'newsurl'=>'".addslashes($r[newsurl])."', 'filetype'=>'".addslashes($r[filetype])."', 'filesize'=>".$r[filesize].", 'relistnum'=>".$r[relistnum].", 'renewsnum'=>".$r[renewsnum].", 'min_keyboard'=>".$r[min_keyboard].", 'max_keyboard'=>".$r[max_keyboard].", 'search_num'=>".$r[search_num].", 'search_pagenum'=>".$r[search_pagenum].", 'newslink'=>".$r[newslink].", 'checked'=>".$r[checked].", 'searchtime'=>".$r[searchtime].", 'loginnum'=>".$r[loginnum].", 'logintime'=>".$r[logintime].", 'addnews_ok'=>".$r[addnews_ok].", 'register_ok'=>".$r[register_ok].", 'indextype'=>'".addslashes($r[indextype])."', 'goodlencord'=>".$r[goodlencord].", 'goodtype'=>'".addslashes($r[goodtype])."', 'searchtype'=>'".addslashes($r[searchtype])."', 'exittime'=>".$r[exittime].", 'smalltextlen'=>".$r[smalltextlen].", 'defaultgroupid'=>".$r[defaultgroupid].", 'fileurl'=>'".addslashes($r[fileurl])."', 'install'=>".$r[install].", 'phpmode'=>".$r[phpmode].", 'dorepnum'=>".$r[dorepnum].", 'loadtempnum'=>".$r[loadtempnum].", 'bakdbpath'=>'".addslashes($r[bakdbpath])."', 'bakdbzip'=>'".addslashes($r[bakdbzip])."', 'downpass'=>'".addslashes($r[downpass])."', 'filechmod'=>".$r[filechmod].", 'loginkey_ok'=>".$r[loginkey_ok].", 'tbname'=>'".addslashes($r[tbname])."', 'limittype'=>".$r[limittype].", 'redodown'=>".$r[redodown].", 'downsofttemp'=>'".addslashes(stripSlashes($tr[downsofttemp]))."', 'onlinemovietemp'=>'".addslashes(stripSlashes($tr[onlinemovietemp]))."', 'lctime'=>".$r[lctime].", 'candocode'=>".$r[candocode].", 'opennotcj'=>".$r[opennotcj].", 'listpagetemp'=>'".addslashes(stripSlashes($tr[listpagetemp]))."', 'reuserpagenum'=>".$r[reuserpagenum].", 'revotejsnum'=>".$r[revotejsnum].", 'readjsnum'=>".$r[readjsnum].", 'qaddtran'=>".$r[qaddtran].", 'qaddtransize'=>".$r[qaddtransize].", 'ebakthisdb'=>".$r[ebakthisdb].", 'delnewsnum'=>".$r[delnewsnum].", 'markpos'=>".$r[markpos].", 'markimg'=>'".addslashes($r[markimg])."', 'marktext'=>'".addslashes($r[marktext])."', 'markfontsize'=>'".addslashes($r[markfontsize])."', 'markfontcolor'=>'".addslashes($r[markfontcolor])."', 'markfont'=>'".addslashes($r[markfont])."', 'adminloginkey'=>".$r[adminloginkey].", 'php_outtime'=>".$r[php_outtime].", 'listpagefun'=>'".addslashes($r[listpagefun])."', 'textpagefun'=>'".addslashes($r[textpagefun])."', 'adfile'=>'".addslashes($r[adfile])."', 'notsaveurl'=>'".addslashes($r[notsaveurl])."', 'rssnum'=>".$r[rssnum].", 'rsssub'=>".$r[rsssub].", 'savetxtf'=>'".addslashes($r[savetxtf])."', 'dorepdlevelnum'=>".$r[dorepdlevelnum].", 'listpagelistfun'=>'".addslashes($r[listpagelistfun])."', 'listpagelistnum'=>".$r[listpagelistnum].", 'infolinknum'=>".$r[infolinknum].", 'searchgroupid'=>".$r[searchgroupid].", 'opencopytext'=>".$r[opencopytext].", 'reuserjsnum'=>".$r[reuserjsnum].", 'reuserlistnum'=>".$r[reuserlistnum].", 'opentitleurl'=>".$r[opentitleurl].", 'searchtempvar'=>".$r[searchtempvar].", 'showinfolevel'=>".$r[showinfolevel].", 'navfh'=>'".addslashes($r[navfh])."', 'spicwidth'=>".$r[spicwidth].", 'spicheight'=>".$r[spicheight].", 'spickill'=>".$r[spickill].", 'jpgquality'=>".$r[jpgquality].", 'markpct'=>".$r[markpct].", 'redoview'=>".$r[redoview].", 'reggetfen'=>".$r[reggetfen].", 'regbooktime'=>".$r[regbooktime].", 'revotetime'=>".$r[revotetime].", 'fpath'=>".$r[fpath].", 'filepath'=>'".addslashes($r[filepath])."', 'nreclass'=>'".addslashes($r[nreclass])."', 'nreinfo'=>'".addslashes($r[nreinfo])."', 'nrejs'=>'".addslashes($r[nrejs])."', 'nottobq'=>'".addslashes($r[nottobq])."', 'defspacestyleid'=>".$r[defspacestyleid].", 'canposturl'=>'".addslashes($r[canposturl])."', 'openspace'=>".$r[openspace].", 'defadminstyle'=>".$r[defadminstyle].", 'realltime'=>".$r[realltime].", 'closeip'=>'".addslashes($r[closeip])."', 'openip'=>'".addslashes($r[openip])."', 'hopenip'=>'".addslashes($r[hopenip])."', 'textpagelistnum'=>".$r[textpagelistnum].", 'memberlistlevel'=>".$r[memberlistlevel].", 'ebakcanlistdb'=>".$r[ebakcanlistdb].", 'keytog'=>".$r[keytog].", 'keytime'=>".$r[keytime].", 'keyrnd'=>'".addslashes($r[keyrnd])."', 'checkdorepstr'=>'".addslashes($checkdorepstr)."', 'regkey_ok'=>".$r[regkey_ok].", 'opengetdown'=>".$r[opengetdown].", 'gbkey_ok'=>".$r[gbkey_ok].", 'fbkey_ok'=>".$r[fbkey_ok].", 'newaddinfotime'=>".$r[newaddinfotime].", 'classnavs'=>'".addslashes($classnavs)."', 'adminstyle'=>'".addslashes($r[adminstyle])."', 'docnewsnum'=>".$r[docnewsnum].", 'openschall'=>".$r[openschall].", 'schallfield'=>".$r[schallfield].", 'schallminlen'=>".$r[schallminlen].", 'schallmaxlen'=>".$r[schallmaxlen].", 'schallnum'=>".$r[schallnum].", 'schallpagenum'=>".$r[schallpagenum].", 'dtcanbq'=>".$r[dtcanbq].", 'dtcachetime'=>".$r[dtcachetime].", 'repkeynum'=>".$r[repkeynum].", 'regacttype'=>".$r[regacttype].", 'opengetpass'=>".$r[opengetpass].", 'hlistinfonum'=>".$r[hlistinfonum].", 'qlistinfonum'=>".$r[qlistinfonum].", 'dtncanbq'=>".$r[dtncanbq].", 'dtncachetime'=>".$r[dtncachetime].", 'readdinfotime'=>".$r[readdinfotime].", 'qeditinfotime'=>".$r[qeditinfotime].", 'onclicktype'=>".$r[onclicktype].", 'onclickfilesize'=>".$r[onclickfilesize].", 'onclickfiletime'=>".$r[onclickfiletime].", 'schalltime'=>".$r[schalltime].", 'defprinttempid'=>".$r[defprinttempid].", 'opentags'=>".$r[opentags].", 'tagstempid'=>".$r[tagstempid].", 'usetags'=>'".addslashes($r[usetags])."', 'chtags'=>'".addslashes($r[chtags])."', 'tagslistnum'=>".$r[tagslistnum].", 'closeqdt'=>".$r[closeqdt].", 'settop'=>".$r[settop].", 'qlistinfomod'=>".$r[qlistinfomod].", 'gb_num'=>".$r[gb_num].", 'member_num'=>".$r[member_num].", 'space_num'=>".$r[space_num].", 'infolday'=>".$r[infolday].", 'filelday'=>".$r[filelday].", 'dorepkey'=>".$r[dorepkey].", 'dorepword'=>".$r[dorepword].", 'onclickrnd'=>'".addslashes($r[onclickrnd])."', 'indexpagedt'=>".$r[indexpagedt].", 'keybgcolor'=>'".addslashes($r[keybgcolor])."', 'keyfontcolor'=>'".addslashes($r[keyfontcolor])."', 'keydistcolor'=>'".addslashes($r[keydistcolor])."', 'indexpageid'=>".$r[indexpageid].", 'closeqdtmsg'=>'".addslashes($r[closeqdtmsg])."', 'openfileserver'=>".$r[openfileserver].", 'fs_purl'=>'".addslashes($fsr[purl])."', 'closemods'=>'".addslashes($r[closemods])."', 'fieldandtop'=>".$r[fieldandtop].", 'fieldandclosetb'=>'".addslashes($r[fieldandclosetb])."', 'filedatatbs'=>'".addslashes($r[filedatatbs])."', 'filedeftb'=>".$r[filedeftb].", 'pldeftb'=>".$plr[pldeftb].", 'plurl'=>'".addslashes($plr[plurl])."', 'plkey_ok'=>".$plr[plkey_ok].", 'plface'=>'".addslashes($plr[plface])."', 'plf'=>'".addslashes($plr[plf])."', 'pldatatbs'=>'".addslashes($plr[pldatatbs])."', 'defpltempid'=>".$plr[defpltempid].", 'pl_num'=>".$plr[pl_num].", 'plgroupid'=>".$plr[plgroupid].", 'closelisttemp'=>'".addslashes($r[closelisttemp])."', 'chclasscolor'=>'".addslashes($r[chclasscolor])."', 'timeclose'=>'".addslashes($r[timeclose])."', 'timeclosedo'=>'".addslashes($r[timeclosedo])."', 'ipaddinfonum'=>".$r[ipaddinfonum].", 'ipaddinfotime'=>".$r[ipaddinfotime].", 'rewriteinfo'=>'".addslashes($r[rewriteinfo])."', 'rewriteclass'=>'".addslashes($r[rewriteclass])."', 'rewriteinfotype'=>'".addslashes($r[rewriteinfotype])."', 'rewritetags'=>'".addslashes($r[rewritetags])."', 'rewritepl'=>'".addslashes($r[rewritepl])."', 'memberconnectnum'=>".$memberconnectnum.", 'closehmenu'=>'".addslashes($r[closehmenu])."', 'indexaddpage'=>".$r[indexaddpage].", 'modmemberedittran'=>".$r[modmemberedittran].", 'modinfoedittran'=>".$r[modinfoedittran].", 'php_adminouttime'=>".$r[php_adminouttime].", 'httptype'=>".$r[httptype].", 'qinfoaddfen'=>".$r[qinfoaddfen].", 'bakescapetype'=>".$r[bakescapetype].", 'hkeytime'=>".$r[hkeytime].", 'hkeyrnd'=>'".addslashes($r[hkeyrnd])."', 'mhavedatedo'=>".$r[mhavedatedo].", 'reportkey'=>".$r[reportkey].", 'ctimeopen'=>".$paddr[ctimeopen].", 'ctimelast'=>".$paddr[ctimelast].", 'ctimeindex'=>".$paddr[ctimeindex].", 'ctimeclass'=>".$paddr[ctimeclass].", 'ctimelist'=>".$paddr[ctimelist].", 'ctimetext'=>".$paddr[ctimetext].", 'ctimett'=>".$paddr[ctimett].", 'ctimetags'=>".$paddr[ctimetags].", 'ctimegids'=>'".addslashes($paddr[ctimegids])."', 'ctimecids'=>'".addslashes($paddr[ctimecids])."', 'ctimernd'=>'".addslashes($paddr[ctimernd])."', 'qmadminuids'=>'".addslashes($agcacher[qmadminuids])."', 'qmforumuids'=>'".addslashes($agcacher[qmforumuids])."', 'qmotheruids'=>'".addslashes($agcacher[qmotheruids])."', 'ckhavemoreport'=>".$ckhavemoreport.", 'usetotalnum'=>".$r[usetotalnum].", 'autodoopen'=>".$paddr[autodoopen].", 'autodofile'=>".$paddr[autodofile].", 'autodoss'=>".$paddr[autodoss].", 'digglevel'=>".$paddr[digglevel].", 'diggcmids'=>'".addslashes($paddr[diggcmids])."', 'spacegids'=>'".addslashes($r[spacegids])."', 'candocodetag'=>".$r[candocodetag].", 'openern'=>'".addslashes($r[openern])."', 'ernurl'=>'".addslashes($r[ernurl])."', 'toqjf'=>'".addslashes($paddr[toqjf])."', 'qtoqjf'=>'".addslashes($paddr[qtoqjf])."', 'ctimeaddre'=>".$paddr[ctimeaddre].", 'ctimeqaddre'=>".$paddr[ctimeqaddre].", 'deftempid'=>".$r[deftempid].$pvstring."); //------------e_public ".GetMoreportCache()." "; return $setting; } //更新模型缓存 function GetModCache(){ global $empire,$dbtbpre; //数据表 $tablesql=$empire->query("select tbname,deftb,yhid,mid,intb from {$dbtbpre}enewstable"); while($tabler=$empire->fetch($tablesql)) { $tables.="\$etable_r['".$tabler[tbname]."']=Array('deftb'=>'".addslashes($tabler[deftb])."', 'yhid'=>".$tabler[yhid].", 'intb'=>".$tabler[intb].", 'mid'=>".$tabler[mid]."); "; } //系统模型 $alllinkfields='|';//关联同步 $modsql=$empire->query("select * from {$dbtbpre}enewsmod"); while($mr=$empire->fetch($modsql)) { $listtempf=doReturnAddTempf($mr['listtempvar']);//列表模板 $texttempf=doReturnAddTempf($mr['tempvar']);//内容模板 $enter=doReturnAddTempf($mr['enter']);//录入项 $qenter=doReturnAddTempf($mr['qenter']);//投稿项 $cj=doReturnAddTempf($mr['cj']);//采集项 //表字段 $mainf=',';//主表字段 $dataf=',';//副表字段 $tobrf=',';//回车字段 $dohtmlf=',';//html字段 $savetxtf='';//存文本字段 $pagef='';//分页字段 $smalltextf=',';//简介字段 $checkboxf=',';//复选框字段 $filef=',';//附件字段 $imgf=',';//图片字段 $flashf=',';//FLASH字段 $onlyf=',';//唯一字段 $linkfields='|';//关联同步 $morevaluef='|';//多值字段 $editorf=',';//编辑器字段 $ubbeditorf=',';//UBB编辑器字段 $adddofunf='||';//增加处理函数 $editdofunf='||';//修改处理函数 $qadddofunf='||';//投稿增加处理函数 $qeditdofunf='||';//投稿修改处理函数 $fsql=$empire->query("select * from {$dbtbpre}enewsf where tid='$mr[tid]'"); while($fr=$empire->fetch($fsql)) { if($fr['tbdataf']) { $dataf.=$fr['f'].','; } elseif($fr['f']!='special.field') { $mainf.=$fr['f'].','; } if($fr['tobr']) { $tobrf.=$fr['f'].','; } if($fr['dohtml']) { $dohtmlf.=$fr['f'].','; } if($fr['savetxt']) { $savetxtf=$fr['f']; } if($fr['ispage']) { $pagef=$fr['f']; } if($fr['issmalltext']) { $smalltextf.=$fr['f'].','; } if($fr['fform']=='checkbox') { $checkboxf.=$fr['f'].','; } if($fr['fform']=='file') { $filef.=$fr['f'].','; } if($fr['fform']=='img') { $imgf.=$fr['f'].','; } if($fr['fform']=='flash') { $flashf.=$fr['f'].','; } if($fr['isonly']) { $onlyf.=$fr['f'].','; } if(($fr['fform']=='linkfield'||$fr['fform']=='linkfieldselect')&&$fr['samedata']&&$fr['linkfieldval']) { $linkfields.=$fr[f].','.$fr[linkfieldtb].'.'.$fr[linkfieldval].'|'; $alllinkfields.=$fr[tbname].'.'.$fr[f].','.$fr[linkfieldtb].'.'.$fr[linkfieldval].'|'; } if($fr['fform']=='morevaluefield') { $morevaluef.=$fr[f].','.$fr[fmvnum].'|'; } if($fr['fform']=='editor') { $editorf.=$fr['f'].','; } if($fr['fform']=='ubbeditor') { $ubbeditorf.=$fr['f'].','; } if($fr['adddofun']) { $adddofunf.=$fr[f].'!#!'.$fr[adddofun].'||'; } if($fr['editdofun']) { $editdofunf.=$fr[f].'!#!'.$fr[editdofun].'||'; } if($fr['qadddofun']) { $qadddofunf.=$fr[f].'!#!'.$fr[qadddofun].'||'; } if($fr['qeditdofun']) { $qeditdofunf.=$fr[f].'!#!'.$fr[qeditdofun].'||'; } } //表数据 $tr=$empire->fetch1("select * from {$dbtbpre}enewstable where tid='$mr[tid]'"); //字符 $mods.="\$emod_r[".$mr[mid]."]=Array('mid'=>".$mr[mid].", 'mname'=>'".addslashes($mr[mname])."', 'qmname'=>'".addslashes($mr[qmname])."', 'defaulttb'=>".$tr[isdefault].", 'datatbs'=>'".addslashes($tr[datatbs])."', 'deftb'=>'".addslashes($tr[deftb])."', 'enter'=>'".addslashes($enter)."', 'qenter'=>'".addslashes($qenter)."', 'listtempf'=>'".addslashes($listtempf)."', 'tempf'=>'".addslashes($texttempf)."', 'mustqenterf'=>'".addslashes($mr[mustqenterf])."', 'listandf'=>'".addslashes($mr[listandf])."', 'setandf'=>".$mr[setandf].", 'searchvar'=>'".addslashes($mr[searchvar])."', 'cj'=>'".addslashes($cj)."', 'canaddf'=>'".addslashes($mr[canaddf])."', 'caneditf'=>'".addslashes($mr[caneditf])."', 'tbmainf'=>'".addslashes($mainf)."', 'tbdataf'=>'".addslashes($dataf)."', 'tobrf'=>'".addslashes($tobrf)."', 'dohtmlf'=>'".addslashes($dohtmlf)."', 'checkboxf'=>'".addslashes($checkboxf)."', 'savetxtf'=>'".addslashes($savetxtf)."', 'editorf'=>'".addslashes($editorf)."', 'ubbeditorf'=>'".addslashes($ubbeditorf)."', 'pagef'=>'".addslashes($pagef)."', 'smalltextf'=>'".addslashes($smalltextf)."', 'filef'=>'".addslashes($filef)."', 'imgf'=>'".addslashes($imgf)."', 'flashf'=>'".addslashes($flashf)."', 'linkfields'=>'".addslashes($linkfields)."', 'morevaluef'=>'".addslashes($morevaluef)."', 'onlyf'=>'".addslashes($onlyf)."', 'adddofunf'=>'".addslashes($adddofunf)."', 'editdofunf'=>'".addslashes($editdofunf)."', 'qadddofunf'=>'".addslashes($qadddofunf)."', 'qeditdofunf'=>'".addslashes($qeditdofunf)."', 'definfovoteid'=>".$mr[definfovoteid].", 'orderf'=>'".addslashes($mr[orderf])."', 'sonclass'=>'".addslashes($mr[sonclass])."', 'maddfun'=>'".addslashes($mr['maddfun'])."', 'meditfun'=>'".addslashes($mr['meditfun'])."', 'qmaddfun'=>'".addslashes($mr['qmaddfun'])."', 'qmeditfun'=>'".addslashes($mr['qmeditfun'])."', 'tid'=>".$mr[tid].", 'tbname'=>'".addslashes($mr[tbname])."'); "; } $mods=" \$emod_pubr=Array('linkfields'=>'".addslashes($alllinkfields)."'); \$etable_r=array(); ".$tables." \$emod_r=array(); ".$mods." "; return $mods; } //返回会员管理组 function eGetCacheMAdmin(){ global $empire,$dbtbpre; $qmr=array(); $qmr['qmadminuids']=''; $qmr['qmforumuids']=''; $qmr['qmotheruids']=''; //缓存 $agcache=''; $qmsql=$empire->query("select * from {$dbtbpre}enewsag"); while($r=$empire->fetch($qmsql)) { if($r['isadmin']==9)//管理员 { if($r['auids']) { $qmr['qmadminuids']=$qmr['qmadminuids']?substr($r['auids'],0,-1).$qmr['qmadminuids']:$r['auids']; } } elseif($r['isadmin']>=5)//版主 { if($r['auids']) { $qmr['qmforumuids']=$qmr['qmforumuids']?substr($r['auids'],0,-1).$qmr['qmforumuids']:$r['auids']; } } elseif($r['isadmin']>=1)//实习版主 { if($r['auids']) { $qmr['qmotheruids']=$qmr['qmotheruids']?substr($r['auids'],0,-1).$qmr['qmotheruids']:$r['auids']; } } else { } //缓存 $agcache.="\$aglevel_r[".$r['agid']."]=Array('agid'=>".$r['agid'].", 'agname'=>'".addslashes($r['agname'])."', 'isadmin'=>".$r['isadmin']."); "; } $agcache=" \$aglevel_r=array(); ".$agcache." "; $qmr['agcache']=$agcache; return $qmr; } //返回会员内部组 function eGetCacheMInGroup(){ global $empire,$dbtbpre; //缓存 $igcache=''; $sql=$empire->query("select * from {$dbtbpre}enewsingroup"); while($r=$empire->fetch($sql)) { //缓存 $igcache.="\$iglevel_r[".$r['gid']."]=Array('gid'=>".$r['gid'].", 'gname'=>'".addslashes($r['gname'])."'); "; } $igcache=" \$iglevel_r=array(); ".$igcache." "; return $igcache; } //会员组缓存 function GetMemberLevel(){ global $empire,$dbtbpre; $file=eReturnTrueEcmsPath()."e/data/dbcache/MemberLevel.php"; $sql=$empire->query("select * from {$dbtbpre}enewsmembergroup order by groupid"); while($r=$empire->fetch($sql)) { $levels.="\$level_r[".$r[groupid]."]=Array('groupid'=>".$r[groupid].", 'groupname'=>'".addslashes($r[groupname])."', 'level'=>".$r[level].", 'checked'=>".$r[checked].", 'favanum'=>".$r[favanum].", 'daydown'=>".$r[daydown].", 'msglen'=>".$r[msglen].", 'regchecked'=>".$r[regchecked].", 'spacestyleid'=>".$r[spacestyleid].", 'dayaddinfo'=>".$r[dayaddinfo].", 'infochecked'=>".$r[infochecked].", 'plchecked'=>".$r[plchecked].", 'msgnum'=>".$r[msgnum]."); "; } //管理组 $agcacher=eGetCacheMAdmin(); //内部组 $igcache=eGetCacheMInGroup(); $levels=""; WriteFiletext_n($file,$levels); } //优化缓存 function GetYh(){ global $empire,$dbtbpre; $sql=$empire->query("select * from {$dbtbpre}enewsyh"); while($r=$empire->fetch($sql)) { $yhs.="\$eyh_r[".$r[id]."]=Array('id'=>".$r[id].", 'hlist'=>".$r[hlist].", 'qlist'=>".$r[qlist].", 'bqnew'=>".$r[bqnew].", 'bqhot'=>".$r[bqhot].", 'bqpl'=>".$r[bqpl].", 'bqgood'=>".$r[bqgood].", 'bqfirst'=>".$r[bqfirst].", 'qmlist'=>".$r[qmlist].", 'dobq'=>".$r[dobq].", 'dojs'=>".$r[dojs].", 'dosbq'=>".$r[dosbq].", 'rehtml'=>".$r[rehtml].", 'otherlink'=>".$r[otherlink].", 'bqdown'=>".$r[bqdown]."); "; } $yhs=" ".$yhs." "; return $yhs; } //返回字段缓存 function ReturnEmptyFCache($f,$val,$isint=0){ $str=''; if($val) { if($isint) { $str="'".$f."'=>".$val.","; } else { $str="'".$f."'=>'".addslashes($val)."',"; } } return $str; } //栏目缓存 function GetClass(){ global $empire,$dbtbpre; $fileqz=eReturnTrueEcmsPath().'e/data/dbcache/'; $filename=$fileqz.'class.php'; $line=250;//每个文件存放栏目数 $num=$empire->gettotal("select count(*) as total from {$dbtbpre}enewsclass"); $sql=$empire->query("select * from {$dbtbpre}enewsclass"); $no=0; $p=0; $l=""; $mod=array(); $modstr=","; while($r=$empire->fetch($sql)) { $no++; $l=""; if($r[wburl])//外部栏目 { $l=", 'wburl'=>'".addslashes($r[wburl])."'"; } elseif($r[islast])//终极栏目 { //组合模型 if(empty($mod[$r[modid]])) { $mod[$r[modid]]="|"; } $mod[$r[modid]].=$r[classid]."|"; if(!strstr($modstr,",".$r[modid].",")) { $modstr.=$r[modid].","; } $l=", 'lencord'=>".$r[lencord].",".ReturnEmptyFCache('link_num',$r[link_num],1)." 'newstempid'=>".$r[newstempid].",".ReturnEmptyFCache('oneinfo',$r[oneinfo],1)." 'listtempid'=>".$r[listtempid].",".ReturnEmptyFCache('pltempid',$r[pltempid],1)." ".ReturnEmptyFCache('newspath',$r[newspath],0).ReturnEmptyFCache('filename',$r[filename],1)." 'filetype'=>'".addslashes($r[filetype])."',".ReturnEmptyFCache('ipath',$r[ipath],0)." ".ReturnEmptyFCache('openpl',$r[openpl],1).ReturnEmptyFCache('openadd',$r[openadd],1)." ".ReturnEmptyFCache('groupid',$r[groupid],0).ReturnEmptyFCache('filename_qz',$r[filename_qz],0)." 'checked'=>".$r[checked].",".ReturnEmptyFCache('wfid',$r[wfid],1)." 'bname'=>'".addslashes($r[bname])."',".ReturnEmptyFCache('cgtoinfo',$r[cgtoinfo],1)." ".ReturnEmptyFCache('showdt',$r[showdt],1).ReturnEmptyFCache('checkpl',$r[checkpl],1).ReturnEmptyFCache('keycid',$r[keycid],1)." 'reorder'=>'".addslashes($r[reorder])."'"; } else { //列表式 if($r[islist]==1&&empty($r[islast])) { $l=", 'lencord'=>".$r[lencord].", 'reorder'=>'".addslashes($r[reorder])."', 'listtempid'=>".$r[listtempid]; } elseif($r[listtempid]) { $l=", 'lencord'=>".$r[lencord].", 'reorder'=>'".addslashes($r[reorder])."', 'listtempid'=>".$r[listtempid]; } } if($r[dtlisttempid]) { $l.=", 'dtlisttempid'=>".$r[dtlisttempid]; } $classes.="\$class_r[".$r[classid]."]=Array('classid'=>".$r[classid].", 'bclassid'=>".$r[bclassid].", 'classname'=>'".addslashes($r[classname])."', 'sonclass'=>'".addslashes($r[sonclass])."', 'featherclass'=>'".addslashes($r[featherclass])."', 'islast'=>".$r[islast].", 'classpath'=>'".addslashes($r[classpath])."',".ReturnEmptyFCache('searchtempid',$r[searchtempid],1)." 'classtype'=>'".addslashes($r[classtype])."',".ReturnEmptyFCache('classurl',$r[classurl],0)." ".ReturnEmptyFCache('maxnum',$r[maxnum],1).ReturnEmptyFCache('yhid',$r[yhid],1)." 'down_num'=>".$r[down_num].", 'online_num'=>".$r[online_num].", 'islist'=>".$r[islist].",".ReturnEmptyFCache('listdt',$r[listdt],1)." 'tid'=>".$r[tid].", 'tbname'=>'".addslashes($r[tbname])."', 'modid'=>".$r[modid].$l."); "; if($no%$line==0||($num%$line<>0&&$num==$no)) { $p++; $file="class".$p.".php"; $include.="require(ECMS_PATH.'e/data/dbcache/".$file."');\r\n"; $classes=""; WriteFiletext_n($fileqz.$file,$classes); $classes=""; } } //-----专题缓存 $zsql=$empire->query("select * from {$dbtbpre}enewszt"); $zt=""; $zfile=$fileqz."ztclass.php"; while($zr=$empire->fetch($zsql)) { $zt.="\$class_zr[".$zr[ztid]."]=Array('ztid'=>".$zr[ztid].", 'ztname'=>'".addslashes($zr[ztname])."', 'ztnum'=>".$zr[ztnum].", 'listtempid'=>".$zr[listtempid].", 'ztpath'=>'".addslashes($zr[ztpath])."',".ReturnEmptyFCache('pltempid',$r[pltempid],1)." 'zttype'=>'".addslashes($zr[zttype])."',".ReturnEmptyFCache('zturl',$zr[zturl],0)." 'islist'=>".$zr[islist].",".ReturnEmptyFCache('maxnum',$zr[maxnum],1)." 'reorder'=>'".addslashes($zr[reorder])."',".ReturnEmptyFCache('yhid',$zr[yhid],1)." 'tbname'=>'".addslashes($zr[tbname])."'); "; } $zt=""; WriteFiletext_n($zfile,$zt); $include.="require(ECMS_PATH.'e/data/dbcache/ztclass.php');\r\n"; $include=""; WriteFiletext_n($filename,$include); //组合模型 $er=explode(",",$modstr); for($i=1;$iquery("update {$dbtbpre}enewsmod set sonclass='".$mod[$mid]."' where mid='$mid'"); } } //标题分类缓存 function GetTitleTypeCache(){ global $empire,$dbtbpre; $sql=$empire->query("select typeid,tname,mid,yhid,tpath,tid,tbname,listdt,ttype from {$dbtbpre}enewsinfotype"); while($r=$empire->fetch($sql)) { $string.="\$class_tr[".$r[typeid]."]=Array('typeid'=>".$r[typeid].", 'tname'=>'".addslashes($r[tname])."', 'tpath'=>'".addslashes($r[tpath])."', 'ttype'=>'".addslashes($r[ttype])."', 'yhid'=>".$r[yhid].", 'listdt'=>".$r[listdt].", 'tbname'=>'".addslashes($r[tbname])."', 'mid'=>".$r[mid]."); "; } return $string; } //全站搜索数据源缓存 function GetSearchAllTb(){ global $empire,$dbtbpre; $file=eReturnTrueEcmsPath()."e/data/dbcache/SearchAllTb.php"; $sql=$empire->query("select tbname,titlefield,smalltextfield from {$dbtbpre}enewssearchall_load"); while($r=$empire->fetch($sql)) { $tbs.="\$schalltb_r['".$r[tbname]."']=Array('tbname'=>'".addslashes($r[tbname])."', 'titlefield'=>'".addslashes($r[titlefield])."', 'smalltextfield'=>'".addslashes($r[smalltextfield])."'); "; } $tbs=""; WriteFiletext_n($file,$tbs); } //-------------- moreport ---------------------- //网站访问端缓存 function GetMoreportCache(){ global $empire,$dbtbpre; $sql=$empire->query("select * from {$dbtbpre}enewsmoreport"); $i=0; while($r=$empire->fetch($sql)) { $i++; $moreports.="\$emoreport_r['".$r[pid]."']=Array('pid'=>'".$r[pid]."', 'pname'=>'".addslashes($r[pname])."', 'purl'=>'".addslashes($r[purl])."', 'ppath'=>'".addslashes($r[ppath])."', 'postpass'=>'".addslashes($r[postpass])."', 'postfile'=>'".addslashes($r[postfile])."', 'tempgid'=>'".addslashes($r[tempgid])."', 'isclose'=>'".addslashes($r[isclose])."', 'closeadd'=>'".addslashes($r[closeadd])."', 'openadmin'=>'".addslashes($r[openadmin])."', 'rehtml'=>'".addslashes($r[rehtml])."', 'mustdt'=>'".$r[mustdt]."'); "; } if($i>1) { $moreports=" //moreports \$emoreport_r=array(); ".$moreports." //moreports "; } else { $moreports=" //moreports \$emoreport_r=array(); //moreports "; } return $moreports; } //开启或关闭访问端信息 function Moreport_UpdateIsclose(){ global $empire,$dbtbpre,$public_r; $num=$empire->gettotal("select count(*) as total from {$dbtbpre}enewsmoreport where isclose=0"); if($num>1) { $purl=addslashes(eReturnDomainSiteUrl()); $ppath=addslashes(ReturnAbsEcmsPath()); $postpass=make_password(60); $empire->query("update {$dbtbpre}enewsmoreport set purl='$purl',ppath='$ppath',postpass='$postpass',rehtml='3' where pid=1"); } else { $postpass=make_password(60); $empire->query("update {$dbtbpre}enewsmoreport set purl='',ppath='',postpass='$postpass',rehtml='0' where pid=1"); } return $num; } //是否主访问端管理 function Moreport_CheckAdminIsMain(){ global $ecms_config; if($ecms_config['sets']['selfmoreportid']>1) { printerror("NotMainMoreport","history.go(-1)"); } } //显示访问端 function Moreport_eReturnMoreportSelect($pid,$varname=''){ global $empire,$dbtbpre,$public_r,$ecms_config; if(!$varname) { $varname='moreportid'; } $pid=(int)$pid; $selects=''; $sql=$empire->query("select * from {$dbtbpre}enewsmoreport order by pid"); while($r=$empire->fetch($sql)) { if(!$r['purl']) { continue; } $selected=''; if($pid==$r['pid']) { $selected=' selected'; } $selects.=""; } $selects=""; return $selects; } //处理接收访问端目录 function Moreport_hDoSetSelfPath($ecms=0){ $moreportpid=(int)$_GET['moreportpid']; if(!$moreportpid) { $moreportpid=(int)$_POST['moreportpid']; } if($moreportpid) { Moreport_eSetSelfPath($moreportpid,$ecms); } return $moreportpid; } //返回moreport参数 function Moreport_ReturnUrlCsPid($pid,$ecms=0,$wh=0,$ycs=''){ $pid=(int)$pid; if(!$pid) { return ''; } if($ecms==1) { $cs=""; } else { $and='&'; if($wh&&!$ycs) { $and='?'; } $cs=$and.'moreportpid='.$pid; } return $cs; } ?>