📄 inc_arcbook_view.php
字号:
$ndtp->SetNameSpace("field","[","]");
$GLOBALS['autoindex'] = 0;
while($row = $this->dsql->GetArray())
{
$GLOBALS['autoindex']++;
$row['title'] = $row['bookname'];
$ndtp->LoadString($innertext);
//获得图书最新的一个更新章节
$row['contenttitle'] = '';
$row['contentid'] = '';
if($getcontent==1){
$nrow = $this->GetNewContent($row['id']);
$row['contenttitle'] = $nrow['title'];
$row['contentid'] = $nrow['id'];
//echo "{$row['contenttitle']} 0 {$row['contentid']}";
}
if($row['booktype']==1) $row['contenturl'] = $cfg_cmspath.'/book/story.php?id='.$row['id'];
else $row['contenturl'] = $cfg_cmspath.'/book/show-photo.php?id='.$row['id'];
//动态网址
$row['dmbookurl'] = $cfg_cmspath.'/book/book.php?id='.$row['id'];
//静态网址
$row['bookurl'] = $row['url'] = GetBookUrl($row['id'],$row['bookname']);
$row['catalogurl'] = $cfg_cmspath.'/book/list.php?id='.$row['catid'];
$row['cataloglink'] = "<a href='{$row['catalogurl']}'>{$row['classname']}</a>";
$row['booklink'] = "<a href='{$row['bookurl']}'>{$row['bookname']}</a>";
$row['contentlink'] = "<a href='{$row['contenturl']}'>{$row['contenttitle']}</a>";
$row['imglink'] = "<a href='{$row['bookurl']}'><img src='{$row['litpic']}' width='$imgwidth' height='$imgheight' border='0' /></a>";
if($row['ischeck']==2) $row['ischeck']='已完成连载';
else $row['ischeck']='连载中...';
if($row['booktype']==0) $row['booktypename']='小说';
else $row['booktypename']='漫画';
if(is_array($ndtp->CTags))
{
foreach($ndtp->CTags as $tagid=>$ctag)
{
$tagname = $ctag->GetTagName();
if(isset($row[$tagname])) $ndtp->Assign($tagid,$row[$tagname]);
else $ndtp->Assign($tagid,'');
}
}
$clist .= $ndtp->GetResult();
}
return $clist;
}
//------------------
//获得指定条件的内容
//-------------------
function GetNewContent($bid)
{
$row = $this->dsql->GetOne("Select id,title,chapterid From #@__story_content where bookid='$bid' order by id desc ");
return $row;
}
//------------------
//获得指定条件的内容
//-------------------
function GetNewContentLink($bid,$innertext='')
{
global $cfg_cmspath;
$rstr = '';
$row = $this->GetNewContent($bid);
if(!is_array($row)) return '';
if(empty($innertext)) $innertext = "<a href='[field:url/]'>[field:title/]</a>";
if($this->Fields['booktype']==1){
$burl = $cfg_cmspath.'/book/show-photo.php?id='.$row['id'];
}else{
$burl = $cfg_cmspath.'/book/story.php?id='.$row['id'];
}
$rstr = preg_replace("/\[field:url([\s]{0,})\/\]/isU",$burl,$innertext);
//$rstr = preg_replace("/\[field:ch([\s]{0,})\/\]/isU",$row['chapterid'],$rstr);
$rstr = preg_replace("/\[field:title([\s]{0,})\/\]/isU",$row['title'],$rstr);
return $rstr;
}
//------------------
//获得章节列表
//-------------------
function GetChapterList($bookid,$innertext)
{
global $cfg_cmspath;
$clist = '';
$this->dsql->SetQuery("Select id,chaptername,chapnum From #@__story_chapter where bookid='{$bookid}' order by chapnum asc ");
$this->dsql->Execute();
$ndtp = new DedeTagParse();
$ndtp->SetNameSpace("in","{","}");
$ch = 0;
while($row = $this->dsql->GetArray())
{
$ch++;
$ndtp->LoadString($innertext);
if(is_array($ndtp->CTags))
{
foreach($ndtp->CTags as $tagid=>$ctag)
{
$tagname = $ctag->GetTagName();
//field类型
if($tagname=='field')
{
if(isset($row[$ctag->GetAtt('name')])) $ndtp->Assign($tagid,$row[$ctag->GetAtt('name')]);
else $ndtp->Assign($tagid,'');
}
//内容列表
else if($tagname=='content')
{
$this->dsql->SetQuery("Select id,title,sortid From #@__story_content where chapterid='{$row['id']}' order by sortid asc");
$this->dsql->Execute('ch');
$ct = 0;
$nlist = '';
while($rowch = $this->dsql->GetArray('ch'))
{
$ct++;
if($this->Fields['booktype']==1){
$rowch['url'] = $cfg_cmspath.'/book/show-photo.php?id='.$rowch['id'];
//$rowch['title'] = "";
}else{
$rowch['url'] = $cfg_cmspath.'/book/story.php?id='.$rowch['id'];
}
$rbtext = preg_replace("/\[field:url([\s]{0,})\/\]/isU",$rowch['url'],$ctag->GetInnerText());
$rbtext = preg_replace("/\[field:ch([\s]{0,})\/\]/isU",$rowch['sortid'],$rbtext);
$rbtext = preg_replace("/\[field:title([\s]{0,})\/\]/isU",$rowch['title'],$rbtext);
$nlist .= $rbtext;
}
$ndtp->Assign($tagid,$nlist);
}
}//End foreach
$clist .= $ndtp->GetResult();
}
}
return $clist;
}
//------------------
//获得栏目列表
//-------------------
function GetCatalogList($pid,$innertext)
{
global $cfg_cmspath;
$clist = '';
$this->dsql->SetQuery("Select id,pid,classname From #@__story_catalog where pid='{$pid}' order by rank asc ");
$this->dsql->Execute();
$ndtp = new DedeTagParse();
$ndtp->SetNameSpace("in","{","}");
$ch = 0;
if(trim($innertext)==""){
if($pid==0) $innertext = GetSysTemplets('book_catalog.htm');
else $innertext = GetSysTemplets('book_catalog_son.htm');
}
while($row = $this->dsql->GetArray())
{
$ch++;
$ndtp->LoadString($innertext);
$row['url'] = $cfg_cmspath.'/book/list.php?id='.$row['id'];
if(is_array($ndtp->CTags))
{
foreach($ndtp->CTags as $tagid=>$ctag)
{
$tagname = $ctag->GetTagName();
//field类型
if($tagname=='field')
{
if(isset($row[$ctag->GetAtt('name')])) $ndtp->Assign($tagid,$row[$ctag->GetAtt('name')]);
else $ndtp->Assign($tagid,'');
}
//内容列表
else if($tagname=='sonlist')
{
$this->dsql->SetQuery("Select id,pid,classname From #@__story_catalog where pid='{$row['id']}' order by rank asc");
$this->dsql->Execute('ch');
$ct = 0;
$nlist = '';
while($rowch = $this->dsql->GetArray('ch'))
{
$ct++;
$rowch['url'] = $cfg_cmspath.'/book/list.php?id='.$rowch['id'];
$rbtext = preg_replace("/\[field:url([\s]{0,})\/\]/isU",$rowch['url'],$ctag->GetInnerText());
$rbtext = preg_replace("/\[field:id([\s]{0,})\/\]/isU",$rowch['id'],$rbtext);
$rbtext = preg_replace("/\[field:classname([\s]{0,})\/\]/isU",$rowch['classname'],$rbtext);
$nlist .= $rbtext;
}
$ndtp->Assign($tagid,$nlist);
}
}//End foreach
$clist .= $ndtp->GetResult();
}
}
return $clist;
}
//-----------------
//获取栏目导航
//--------------
function GetPosition($catid,$bcatid)
{
global $cfg_cmspath,$cfg_list_symbol;
$oklink = '';
$this->dsql->SetQuery("Select id,classname From #@__story_catalog where id='$catid' Or id='$bcatid' order by pid asc ");
$this->dsql->Execute();
$row = $this->dsql->GetArray();
if(is_array($row)) $oklink = "<a href='{$cfg_cmspath}/book/list.php?id={$row['id']}'>{$row['classname']}</a>";
$row = $this->dsql->GetArray();
if(is_array($row)) $oklink .= " ".trim($cfg_list_symbol)." {$row['classname']}";
return $oklink;
}
//---------------------------
//关闭相关资源
//---------------------------
function Close()
{
@$this->dsql->Close();
unset($this->dtp);
}
//-------------------
//获取上一页连接
//-------------------
function GetPreNext($gtype)
{
if(count($this->PreNext)==0)
{
$chapnum = $this->Fields['chapnum'];
//获得上一条记录
$row = $this->dsql->GetOne("Select id,title,sortid From #@__story_content where bookid={$this->Fields['bookid']} And chapterid={$this->Fields['chapterid']} And sortid<{$this->Fields['sortid']} order by sortid desc ");
if(!is_array($row)){
$row = $this->dsql->GetOne("Select id From #@__story_chapter where bookid={$this->Fields['bookid']} And chapnum<$chapnum order by chapnum desc ");
if(is_array($row)){
$row = $this->dsql->GetOne("Select id,title,sortid From #@__story_content where bookid={$this->Fields['bookid']} And chapterid='{$row['id']}' order by sortid desc ");
}
}
if(!is_array($row)){
$this->PreNext['pre']['id']=0;
$this->PreNext['pre']['link']="javascript:alert('刚开始哦');";
$this->PreNext['pre']['title']='这是第一页';
}else{
$this->PreNext['pre']['id']=$row['id'];
$this->PreNext['pre']['title']=$row['title'];
if($this->Fields['booktype']==1){
$this->PreNext['pre']['link']="show-photo.php?id=".$row['id'];
$this->PreNext['pre']['title'] = "上一页";
}
else $this->PreNext['pre']['link']="story.php?id=".$row['id'];
}
//获得下一条记录
$row = $this->dsql->GetOne("Select id,title,sortid From #@__story_content where bookid={$this->Fields['bookid']} And chapterid={$this->Fields['chapterid']} And sortid>{$this->Fields['sortid']} order by sortid asc ");
if(!is_array($row)){
$row = $this->dsql->GetOne("Select id From #@__story_chapter where bookid={$this->Fields['bookid']} And chapnum>$chapnum order by chapnum asc ");
if(is_array($row)){
$row = $this->dsql->GetOne("Select id,title,sortid From #@__story_content where bookid={$this->Fields['bookid']} And chapterid={$row['id']} order by sortid asc ");
}
}
if(!is_array($row)){
$this->PreNext['next']['id']=0;
$this->PreNext['next']['link']="javascript:alert('没有了哦');";
$this->PreNext['next']['title']='这是最后一页';
}else{
$this->PreNext['next']['id']=$row['id'];
$this->PreNext['next']['title']=$row['title'];
if($this->Fields['booktype']==1){
$this->PreNext['next']['link']="show-photo.php?id=".$row['id'];
$this->PreNext['next']['title'] = "下一页";
}
else $this->PreNext['next']['link']="story.php?id=".$row['id'];
}
}
if($gtype=='prelink') return "<a href='{$this->PreNext['pre']['link']}'>$this->PreNext['pre']['title']</a>";
else if($gtype=='nextlink') return "<a href='{$this->PreNext['next']['link']}'>$this->PreNext['next']['title']</a>";
else if($gtype=='preurl') return $this->PreNext['pre']['link'];
else if($gtype=='nexturl') return $this->PreNext['next']['link'];
else return "";
}
//---------------------------------
//获取动态的分页列表
//---------------------------------
function GetPageListDM($list_len,$listitem="index,end,pre,next,pageno")
{
$prepage="";
$nextpage="";
$prepagenum = $this->PageNo-1;
$nextpagenum = $this->PageNo+1;
if($list_len==""||ereg("[^0-9]",$list_len)) $list_len=3;
$totalpage = ceil($this->TotalResult/$this->PageSize);
//页面小于或等于一
if($totalpage<=1 && $this->TotalResult>0) return "共1页/".$this->TotalResult."条记录";
if($this->TotalResult == 0) return "共0页/".$this->TotalResult."条记录";
$maininfo = "<dd><span>共{$totalpage}页/".$this->TotalResult."条记录</span></dd>";
$purl = $this->GetCurUrl();
$geturl = "id=".$this->CatalogID."&keyword=".$this->Keys['keyword']."&author=".$this->Keys['author']."&";
$hidenform = "<input type='hidden' name='id' value='".$this->CatalogID."'>\r\n";
$hidenform .= "<input type='hidden' name='keyword' value='".$this->Keys['keyword']."'>\r\n";
$hidenform .= "<input type='hidden' name='author' value='".$this->Keys['author']."'>\r\n";
$purl .= "?".$geturl;
//获得上一页和下一页的链接
if($this->PageNo != 1){
$prepage.="<dd><a href='".$purl."PageNo=$prepagenum'>上一页</a></dd>\r\n";
$indexpage="<dd><a href='".$purl."PageNo=1'>首页</a></dd>\r\n";
}
else{
$indexpage="";
}
if($this->PageNo!=$totalpage && $totalpage>1){
$nextpage.="<dd><a href='".$purl."PageNo=$nextpagenum'>下一页</a></dd>\r\n";
$endpage="<dd><a href='".$purl."PageNo=$totalpage'>末页</a></dd>\r\n";
}
else{
$endpage="";
}
//获得数字链接
$listdd="";
$total_list = $list_len * 2 + 1;
if($this->PageNo >= $total_list) {
$j = $this->PageNo-$list_len;
$total_list = $this->PageNo+$list_len;
if($total_list>$totalpage) $total_list=$totalpage;
}else{
$j=1;
if($total_list>$totalpage) $total_list=$totalpage;
}
for($j;$j<=$total_list;$j++){
if($j==$this->PageNo) $listdd.= "<dd><span>$j</span></dd>\r\n";
else $listdd.="<dd><a href='".$purl."PageNo=$j'>[".$j."]</a></dd>\r\n";
}
$plist = "<form name='pagelist' action='".$this->GetCurUrl()."'>$hidenform";
$plist .= "<dl id='dedePageList'>\r\n";
$plist .= $maininfo.$indexpage.$prepage.$listdd.$nextpage.$endpage;
if($totalpage>$total_list){
$plist.="<dd><input type='text' name='PageNo' style='width:30px;height:18px' value='".$this->PageNo."'></dd>\r\n";
$plist.="<dd><input type='submit' name='plistgo' value='GO' style='width:24px;height:18px;font-size:9pt'></dd>\r\n";
}
$plist .= "</dl>\r\n</form>\r\n";
return $plist;
}
//---------------
//获得当前的页面文件的url
//----------------
function GetCurUrl()
{
if(!empty($_SERVER["REQUEST_URI"])){
$nowurl = $_SERVER["REQUEST_URI"];
$nowurls = explode("?",$nowurl);
$nowurl = $nowurls[0];
}else{ $nowurl = $_SERVER["PHP_SELF"]; }
return $nowurl;
}
}//End Class
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -