2011-01-14 6 views
0
---------------------------------------------------------------------------------- 
|id_category|parent_id|category_level|category_sort|category_name|category_rw_tag| 
|--------------------------------------------------------------------------------| 
|1   |0  |1    |NULL   |Shopping  |NULL   | 
|2   |1  |2    |NULL   |Laptops  |NULL   | 
|3   |2  |3    |NULL   |Accessories |NULL   | 
|4   |3  |4    |NULL   |HDD   |NULL   | 
---------------------------------------------------------------------------------- 

私はカテゴリのテーブルを持っています。上記の構成に変更します。私の問題の 拳:PHP/MySQLの動的ブレッドクラム

Shopping > Laptops > Accesories > HDD 

第二: ブレッドクラム 私はこのような階層リンクを構築したいと思います。動的でなければなりません! ので、私はディスプレイに= 5 パラメータid_categoryでDBテーブルを照会する場合:

Shopping > Laptops > Accesories > HDD 

私は上のパラメータid_category = 4

Shopping > Laptops > Accesories 

でDBテーブルを照会...とするとき。

私は私の質問に関してすべての質問を読みましたが、私はこれをどうやって解決するか分かりませんでした。

あなたは私の唯一の希望です。

答えて

1

ルートカテゴリ(parent_id = 0)に達するまで、各カテゴリを取得するためにクエリを実行する必要があります。したがって、あなたの例では、id = 4のカテゴリを照会し、parent_idがゼロと等しくない行をチェックして、parent_idなどで次のカテゴリを照会します。

カテゴリが5レベル以上ある場合、あなたの電子商取引ウェブサイトにはあまりにも多くのカテゴリがありませんが、私はあなたのテーブルにbreadscrumbフィールドを作成しました。

+0

ありがとうございます。私はちょうど上昇列を格納する列をもう1つ追加します。 – morowind

関連する問題