www.gusucode.com > 搜一次CMS电影程序 PHP 1.5源码程序 > admin/mark/admin_spantopic.php
<?php /* '************************************************************************************************** ' 软件名称: 搜一次 Content Management System ' 版本编号: Version 5.X ' 官方网站: http://www.syccms.com ' 官方论坛:http://bbs.syccms.com ' 版权所有: 搜一次开发团队 无痕(QQ:512591) ' 法律顾问: 杭州市元茂律师事务所 严飞律师 ' 郑重声明: ' 1、任何个人或组织不得在未经授权的情况下删除、修改、拷贝本软件及其他副本上一切关于版权的信息; ' 2、搜一次网络事业部保留此软件的法律追究权利 '************************************************************************************************** */ require_once("../../include/config.inc.php"); include "../../include/label.php"; include "../admin_loginstate.php"; if(S_Webmode==1){die("<font color=red>当前网站为动态模式,不能生成!!</font>");} $type=SafeRequest("type","get"); if($type=="show"){ $classnow=SafeRequest("classnow","get"); $page=SafeRequest("page","get"); if($page==""){$page=1;} if($classnow==""){$classnow=0;} $sql="select S_ID,S_SystemID from s_topic"; $classresult=$db->getAll($sql); $ID=$classresult[$classnow]['S_ID']; $SystemID=$classresult[$classnow]['S_SystemID']; if($SystemID=='1'){ if(!file_exists(_SYC_ROOT_.S_Templateurl."vodtopic.html")) die(_SYC_ROOT_.S_Templateurl."vodtopic.html模板文件不存在"); $ListContent=@file_get_contents(_SYC_ROOT_.S_Templateurl."vodtopic.html"); $Table="video"; } elseif($SystemID=='2'){ if(!file_exists(_SYC_ROOT_.S_Templateurl."arttopic.html")) die(_SYC_ROOT_.S_Templateurl."arttopic.html模板文件不存在"); $ListContent=@file_get_contents(_SYC_ROOT_.S_Templateurl."arttopic.html"); $Table="article"; } // // //头部和尾部内容 // if(file_exists("../../".S_Templateurl."bottom.html")){ // $bottom_text=file_get_contents("../../".S_Templateurl."bottom.html"); // } // else{ // $bottom_text=""; // } // if(file_exists("../../".S_Templateurl."head.html")){ // $head_text=file_get_contents("../../".S_Templateurl."head.html"); // } // else{ // $head_text=""; // } // $TopContent=$head_text; // $BottomContent=$bottom_text; // // $ListContent=Common_Mark2($ListContent); //取总也数 // preg_match_all('/{syccms:([\S]+)\s+([\s\S]+?)}([\s\S]+?){\/syccms:\1}/',$ListContent,$Content_Arr); // for($i=0;$i<count($Content_Arr[2]);$i++){ // $Table="s_".$Content_Arr[1][$i]; // preg_match_all('/([a-z0-9]+)=([a-z0-9|,]+)/',$Content_Arr[2][$i],$Content_Param); // for($j=0;$j<count($Content_Param[1]);$j++){ // if($Content_Param[1][$j]=="pagesize"){ // $pagesize2=$Content_Param[2][$j]; // if($SystemID=='1'){ // $sqlstr2="select * from s_video where S_Topic=".$ID." "; // } // elseif($SystemID=='2'){ // $sqlstr2="select * from s_article where S_Topic=".$ID." "; // } // $recount2=$db->num_rows($db->query($sqlstr2)); // $Arr2=SPage($sqlstr2,$pagesize2,1,0,10);//sql,每页显示条数 // break; // } // } // } preg_match_all("/{syccms:".$Table."(.*?pagesize=([\S]+).*?)}([\s\S]+?){\/syccms:".$Table."}/",$ListContent,$page_arr2);//判断是否有分页标识 if(!empty($page_arr2) && !empty($page_arr2[2])){ $sqlstr2=Mark_Sql("s_".$Table,$page_arr2[1][0],$ID); $recount2=$db->num_rows($db->query($sqlstr2)); $Arr2=SPage($sqlstr2,$page_arr2[2][0],1,1,10);//sql,每页显示条数 }else{ $recount2=1; $Arr2[6]=1; $page_arr2[2][0]=1; } $sqlstr2="select S_Name from s_topic where S_ID=".$ID.""; $row=$db->getrow($sqlstr2); //循环开始 if(isset($page_arr2[2][0])!=""){ if($Arr2[6]<S_Createpre){$spanpage=1;} else{$spanpage=ceil($Arr2[6]/S_Createpre);} echo("<div style=' width:100%; background: #F9FBFD; border-top:4px solid #DEEFFA; border-bottom:1px solid #DEEFFA;color:#008EBD; font-size:10pt; height:30px; line-height:30px;font-weight:bold; margin:0 auto;'> 正在开始生成专题内容第<font style='color:red; font-size:16px; font-style:italic'>".$page."</font>页,共<font style='color:red; font-size:16px; font-style:italic'>".$spanpage."</font>页</div>"); $pagenum=getpagenum($ListContent); preg_match_all("/{syccms:".$Table."(.*?pagesize=([\S]+).*?)}([\s\S]+?){\/syccms:".$Table."}/",$ListContent,$page_arr); if(!empty($page_arr) && !empty($page_arr[2])){ $sqlstr=Mark_Sql("s_".$Table,$page_arr[1][0],$ID); } for($l=($page-1)*S_Createpre+1;$l<(S_Createpre*$page)+1;$l++){ if($recount2=='0'){ if((($l-1)*$page_arr2[2][0])>$recount2){break;} } else{ if((($l-1)*$page_arr2[2][0])>=$recount2){break;} } $Mark_Text=$ListContent; $Mark_Text=topandbottom($Mark_Text); $Mark_Text=ReplaceStr($Mark_Text,"[topic:name]",$row['S_Name']); $Mark_Text=ReplaceStr($Mark_Text,"[topic:id]",$row['S_ID']); $Mark_Text=ReplaceStr($Mark_Text,"[topic:link]",LinkClassUrl("s_topic",$row['S_ID'],$row['S_SystemID'],1)); $data_content=""; //判断是否有分页标识 if(!empty($page_arr) && !empty($page_arr[2])){ $Arr=SPage($sqlstr,$page_arr[2][0],$l,$ID,$pagenum);//sql,每页显示条数 $result=$db->query($Arr[2]); $recount=$db->num_rows($result); if($recount==0){ $data_content="<div align=center><strong><font style=font-size:12px;>暂无该专题数据数据!</font></strong></div>"; }else{ if($result){ $sorti=1; while ($row2 = $db ->fetch_array($result)){ switch($Table){ case 'video':$datatmp=datavideo($page_arr[0][0],$page_arr[3][0],$row2,$sorti);break; case 'article':$datatmp=dataart($page_arr[0][0],$page_arr[3][0],$row2,$sorti);break; default:$datatmp=datavideo($page_arr[0][0],$page_arr[3][0],$row2,$sorti);break; } $sorti=$sorti+1; $data_content.=$datatmp; } } }// end if recount $Mark_Text=Page_Mark($Mark_Text,$Arr); $Mark_Text=ReplaceStr($Mark_Text,$page_arr[0][0],$data_content); unset($data_content); } $Mark_Text= Common_Mark($Mark_Text,$ID); $spanurl=LinkClassUrl("s_topic",$ID,$SystemID,$Arr[5]); $spanurl=substr($spanurl,strlen(S_SitePath)); spandir($spanurl); fwrite(fopen("../../".$spanurl,"wb"),$Mark_Text); echo "<font style=font-size:10pt;> 生成<font color=red>".$row['S_Name']."</font>第".$Arr[5]."成功:<a href=../../".$spanurl." target=_blank>".$spanurl."</a></font><br/>"; } unset($page_arr); unset($Arr); $page=$page+1; if($page>$spanpage){ if(($classnow+1)>(count($classresult)-1)){ echo "<br/><font style=font-size:10pt;> <b>恭喜你,专题全部生成完毕了...</b><font style=font-size:10pt;>"; } else{ echo "<br/><font style=font-size:10pt;> <b>暂停".S_StopTime."秒后继续生成下一专题...</b></font><script language='javascript'>setTimeout('ReadGo();',".(S_StopTime*1000).");function ReadGo(){location.href='?type=".$type."&classnow=".($classnow+1)."';}</script>"; } } else{ echo "<br/><font style=font-size:10pt;> <b>暂停".S_StopTime."秒后继续生成...</b></font><script language='javascript'>setTimeout('ReadGo();',".(S_StopTime*1000).");function ReadGo(){location.href='?type=".$type."&classnow=".($classnow)."&page=".$page."';}</script>"; } } } else{ if(!file_exists(_SYC_ROOT_.S_Templateurl."topic.html")) die(_SYC_ROOT_.S_Templateurl."topic.html模板文件不存在"); $ListContent=@file_get_contents(_SYC_ROOT_.S_Templateurl."topic.html"); preg_match_all('/{syccms:topic(.*?pagesize=([\S]+).*?)}([\s\S]+?){\/syccms:topic}/',$ListContent,$page_arr2);//判断是否有分页标识 if(!empty($page_arr2) && !empty($page_arr2[2])){ $sqlstr2=Mark_Sql("s_topic",$page_arr2[1][0],$ID); $recount2=$db->num_rows($db->query($sqlstr2)); $Arr2=SPage($sqlstr2,$page_arr2[2][0],1,1,10);//sql,每页显示条数 }else{ $recount2=1; $Arr2[6]=1; $page_arr2[2][0]=1; } echo("<div style=' width:100%; background: #F9FBFD; border-top:4px solid #DEEFFA; border-bottom:1px solid #DEEFFA;color:#008EBD; font-size:10pt; height:30px; line-height:30px;font-weight:bold; margin:0 auto;'> 正在开始生成专题列表</div>"); for($l=0;$l<$Arr2[6];$l++){ $data_content=""; $Mark_Text=$ListContent; $Mark_Text=topandbottom($Mark_Text); $pagenum=getpagenum($Mark_Text); preg_match_all('/{syccms:topic(.*?pagesize=([\S]+).*?)}([\s\S]+?){\/syccms:topic}/',$Mark_Text,$page_arr); //判断是否有分页标识 if(!empty($page_arr) && !empty($page_arr[2])){ $sqlstr=Mark_Sql("s_topic",$page_arr[1][0],$ID); $Arr=SPage($sqlstr,$page_arr[2][0],$l,$ID,$pagenum);//sql,每页显示条数 $result=$db->query($Arr[2]); $recount=$db->num_rows($result); if($recount==0){ $data_content="<div align=center><strong><font style=font-size:12px;>暂无该专题数据数据!</font></strong></div>"; }else{ if($result){ $sorti=1; while ($row2 = $db ->fetch_array($result)){ $datatmp=datatopic($page_arr[0][0],$page_arr[3][0],$row2,$sorti); $sorti=$sorti+1; $data_content.=$datatmp; } } }// end if recount $Mark_Text=Page_Mark($Mark_Text,$Arr); $Mark_Text=ReplaceStr($Mark_Text,$page_arr[0][0],$data_content); } $Mark_Text= Common_Mark($Mark_Text,0); $spanurl=LinkClassUrl("s_topic",0,1,$Arr[5]); $spanurl=substr($spanurl,strlen(S_SitePath)); spandir($spanurl); if($Arr[5]==1){ fwrite(fopen("../../".S_Stlistfolder."/index.html","wb"),$Mark_Text); } fwrite(fopen("../../".$spanurl,"wb"),$Mark_Text); echo "<font style=font-size:10pt;> <font color=red>专题列表 第".$Arr[5]." 成功:</font><a href=../../".$spanurl." target=_blank>".$spanurl."</a></font><br/>"; } unset($page_arr); unset($Arr); echo "<br/><font style=font-size:10pt;> <b>暂停".S_StopTime."秒后开始生成专题内容页...</b></font><script language='javascript'>setTimeout('ReadGo();',".(S_StopTime*1000).");function ReadGo(){location.href='admin_spantopic.php?type=show';}</script>"; } function SPage($mysql,$pagesize,$pages,$ClassID,$pagenum=10){ global $db; $pagesok=$pagesize;//每页显示记录数 if (!isset($pages)||$pages==""||!is_numeric($pages)||$pages<=0){ $pages=1; } $sqlstr=$mysql; $res=$db -> query($sqlstr); $nums= $db -> num_rows($res); if($nums==0){$nums=1;} $pagejs=ceil($nums/$pagesok);//总页数 if($pages>$pagejs){ $pages=$pagejs; } $sql=$sqlstr." LIMIT ".$pagesok*($pages-1).",".$pagesok; $result = $db -> query($sql); $str=""; $first=LinkClassUrl("s_topic",$ClassID,1,1); if($pages==1){ $pageup=LinkClassUrl("s_topic",$ClassID,1,1); } else{ $pageup=LinkClassUrl("s_topic",$ClassID,1,($pages-1)); } if($pages==$pagejs){ $pagenext=LinkClassUrl("s_topic",$ClassID,1,$pages); } else{ $pagenext=LinkClassUrl("s_topic",$ClassID,1,($pages+1)); } $last=LinkClassUrl("s_topic",$ClassID,1,$pagejs); $pagelist="<select onchange=javascript:window.location=this.options[this.selectedIndex].value;>\r\n<option value='0'>跳转</option>\r\n"; for($k=1;$k<=$pagejs;$k++){ $pagelist.="<option value='".LinkClassUrl("s_topic",$ClassID,1,$k)."'>第".$k."页</option>\r\n"; } $pagelist.="</select>"; if($pagejs<=$pagenum){ for($i=1;$i<=$pagejs;$i++){ $str.="<a href='".LinkClassUrl("s_topic",$ClassID,1,$i)."'>".$i."</a> "; } } else{ if($pages>=$pagenum){ for($i=$pages-intval($pagenum/2);$i<=$pages+(intval($pagenum/2));$i++){ if($i<=$pagejs){ $str.="<a href='".LinkClassUrl("s_topic",$ClassID,1,$i)."'>".$i."</a> "; } } if($i<=$pagejs){ $str.="...."; $str.="<a href='".LinkClassUrl("s_topic",$ClassID,1,$pagejs)." '>".$pagejs."</a> "; } } else{ for($i=1;$i<=$pagenum;$i++){ $str.="<a href='".LinkClassUrl("s_topic",$ClassID,1,$i)." '>".$i."</a> "; } if($i<=$pagejs){ $str.="...."; $str.="<a href='".LinkClassUrl("s_topic",$ClassID,1,$pagejs)." '>".$pagejs."</a> "; } } } $arr=array($str,$result,$sql,$nums,$pagelist,$pages,$pagejs,$first,$pageup,$pagenext,$last,$pagesok); @mysql_free_result($res); return $arr; } ?>