子信息调用父信息

这里演示的调用代码,都是直接用php代码书写。这种调用方式更灵活,效率更高。

1、典型的应用例子

(1)小说网站中:章节页 调用 书籍信息

(2)剧情网站中:剧情页 调用 电视剧信息

(3)游戏网站中:攻略页 调用 游戏信息

(4)新闻网站中:内容页 调用 多个TAG

2、调用代码

(1)一般将此段代码放在模板顶部,在模板中间相应位置用 <?=$astr?> 显示父信息

(2)代码中 limit 100 表示最多调用100个,数字范围0~999999。在明确只有1个父信息时,写为1,可以提高效率。

(3)子信息id 和 子信息classid 在不同页面中取值方法不同,下面是在内容页中的取值方法。可以根据实际应用来修改。

<?php

//子信息id
$zi_id=$navinfor[id];

//子信息classid
$zi_classid=$navinfor[classid];

$astr='';
$sqlb=$empire->query("select tagid from {$dbtbpre}moretags_子信息所在数据表名_关联字段名 where classid='$zi_classid' and id='$zi_id' limit 100");
while($rb=$empire->fetch($sqlb)){
	$rr=$empire->fetch1("select id,classid,title,titleurl from {$dbtbpre}ecms_moretags where id='$rb[tagid]' limit 1");
	if($rr['id']){
		$astr.='<a href="'.$rr['titleurl'].'" title="'.$rr['title'].'" target="_blank">'.$rr['title'].'</a> ';
	}
}

?>

父信息调用子信息

这里演示的调用代码,都是直接用php代码书写。这种调用方式更灵活,效率更高。

1、典型的应用例子

(1)小说网站中:小说页 调用 章节

(2)剧情网站中:电视剧页 调用 剧情

(3)新闻网站中:tag 调用 子信息

2、调用代码

此段代码放在模板顶部,在模板中间相应位置用 <?=$bstr?> 显示多个父信息。下面代码中 100 表示最多调用100个,可以自行修改别的数字0~99999。

<?php

//父信息id
$fuid=$navinfor['id'];

$ccstr='';
$sqlcc=$empire->query("select id,classid from {$dbtbpre}moretags_子信息所在数据表名_关联字段名 where tagid='$fuid' order by newstime limit 99999");
while($ccr=$empire->fetch($sqlcc)){
	$rr=$empire->fetch1("select id,title,titleurl from {$dbtbpre}ecms_".$class_r[$ccr['classid']]['tbname']." where id='$ccr[id]' limit 1");
	if($rr['id']){
		$ccstr.='<a href="'.$rr['titleurl'].'" title="'.$rr['title'].'">'.$rr['title'].'</a> ';
	}
}


?>

子信息调用父信息的全部子信息

子信息调用父信息的全部子信息,就是将 子信息调用父信息 和 父信息调用子信息 代码结合起来。

<?php

//子信息id
$zi_id=$navinfor[id];

//子信息classid
$zi_classid=$navinfor[classid];

$allstr='';
$sqlb=$empire->query("select tagid from {$dbtbpre}moretags_子信息所在数据表名_关联字段名 where classid='$zi_classid' and id='$zi_id' limit 100");
while($rb=$empire->fetch($sqlb)){
    $rrb=$empire->fetch1("select id,classid,title,titleurl from {$dbtbpre}ecms_moretags where id='$rb[tagid]' limit 1");
    if($rrb['id']){
        //第一层循环 至此调用出来了父信息id

        //父信息id
        $fuid=$rrb['id'];
        $sqlcc=$empire->query("select id,classid from {$dbtbpre}moretags_子信息所在数据表名_关联字段名 where tagid='$fuid' order by newstime limit 99999");
        while($ccr=$empire->fetch($sqlcc)){
            //第二层循环 调用当前父信息下的其它子信息
            $rr2=$empire->fetch1("select id,title,titleurl from {$dbtbpre}ecms_".$class_r[$ccr['classid']]['tbname']." where id='$ccr[id]' limit 1");
            if($rr2['id']){
                $allstr.='<a href="'.$rr2['titleurl'].'" title="'.$rr2['title'].'">'.$rr2['title'].'</a> ';
            }
        }
    }
}

echo $allstr;
?>
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。