ホームページ > バックエンド開発 > PHPチュートリアル > 数据库 - PHP 一级栏目读取三级栏目下文章?

数据库 - PHP 一级栏目读取三级栏目下文章?

WBOY
リリース: 2016-06-06 20:29:40
オリジナル
1355 人が閲覧しました

网站一共分3级栏目 分别有一个栏目类型表 和 文章表

栏目类型:id pid (本身id和父层id)
文章类型:id tyid (本身id 和所属栏目id)

例如:

<code> 体育  id= 1 pid= 0
 球类  id=10 pid=1
 足球  id=20 pid=10
 足球下的文章 id= 随意    tyid=20
</code>
ログイン後にコピー
ログイン後にコピー

如何把足球下的所有文章 显示在体育里?? 应该怎么读取?
本人初学php和mysql 希望大家指教!请别随意的打上利用join sql拼接 或者 递归读取!谢谢大家

回复内容:

网站一共分3级栏目 分别有一个栏目类型表 和 文章表

栏目类型:id pid (本身id和父层id)
文章类型:id tyid (本身id 和所属栏目id)

例如:

<code> 体育  id= 1 pid= 0
 球类  id=10 pid=1
 足球  id=20 pid=10
 足球下的文章 id= 随意    tyid=20
</code>
ログイン後にコピー
ログイン後にコピー

如何把足球下的所有文章 显示在体育里?? 应该怎么读取?
本人初学php和mysql 希望大家指教!请别随意的打上利用join sql拼接 或者 递归读取!谢谢大家

首先写个递归函数把子孙目录id查询出来,然后以目录id为查询条件查询文章即可。

怎么读有很多种方式,我给一个更方便的查询方式不过需要修改一下表结构

增加一个level 和 top_id

<code class="sql">select * from table where top_id = 1 and level = 3</code>
ログイン後にコピー

这样就查询到了所有的三级分类 再根据分类查询相应的文章

好处是查询方便 麻烦的地方是后台管理要多维护两个字段(当然具体的字段要根据你的业务逻辑来处理 我提供一个思路)

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート