0

私は、ajaxを介して、ページを更新せずに、結果がdivに表示されたデータベースクエリを参照する製品カタログを作成しています。

カテゴリの例は次のとおりです。

ホームヘルスエンターテインメント

各カテゴリにはサブカテゴリもあります。つまり、次のとおりです。

ホーム:ガーデンファニチャー配管など

次のような、それらがどこにあるかを正確に示す小さなディレクトリのものを作成したいと思います。

ホーム>>>庭>>>芝生の手入れ

それらのそれぞれをクリック可能なリンクとして使用して、その人をその特定のクエリレベルに戻します。

私のコードは1つの.phpドキュメントで、クエリとクエリを出力するコードが含まれています。出力をクリックすると、同じクエリ/出力をポイントして再実行するajaxスクリプトがトリガーされますが、結果は異なります。

そうは言っても、ディレクトリパスを保存して表示する方法を作成する方法がわかりません。私が上で述べたこと。

クリックされたカテゴリを取得してURLに渡し、再読み込み時にphpが値を持つようにする方法を考えていました。そして、その変数をクリック可能なディレクトリリンクに変換します。しかし、問題は、複数のレイヤーに対してそれを行う方法がわからないことです。

つまり、誰かが「庭」をクリックしただけの場合、庭の変数を通過させてナビゲーションで使用できますが、誰かが「芝生の手入れ」をクリックした場合、私が持ってきた変数のため、「庭」の変数を保持する方法がわかりません。 URLを介して「芝生の手入れ」と表示されるようになりました。

累積値を動的に追加して配列に格納することと関係があるように感じますが、私は本当にアイデアがありません...

4

2 に答える 2

5

あなたが説明したことから、ディレクトリではなくパンくず/カテゴリを実装したいようです。

この場合、基本的に次のようにデータベースにカテゴリテーブルを作成する必要があります。

Categories
id | parent_id | name
1  | 0         | Home
2  | 1         | Garden
3  | 1         | Furniture
4  | 1         | Plumbing
5  | 2         | Lawn Care

これは、次のような階層に相当します。

    • 公園
      • ローンケア
    • 家具
    • 配管

たとえば、[ホーム]>[庭]>[芝生の手入れ]で商品を表示したい場合は、その商品をカテゴリ#5(芝生の手入れ)にリンクする必要があります。次に、そこから親構造を把握するwhileループを実行する関数を開発する必要があります。親が見つからなくなるまで(またはparent_id = 0になるまで)ループする必要があります。言い換えれば、それは行くでしょう:

I'm in Lawn Care. Does Lawn Care have a parent?
Yes -> Garden. Does Garden have a parent?
Yes -> Home. Does Home have a parent?
No -> End.

これを実装する方法はいくつかあります。そのため、詳細を省略しました。

または、製品またはカテゴリの保存時にこの計算を実行して、階層を毎回ではなく1回だけマップできるようにすることもできます(計算を保存する)が、これは非常に単純なソリューションであり、多数の場合に機能します。製品の。

この方法の利点は、所属するカテゴリに基づいて製品リストを実装できることです。また、別の観点から、カテゴリごとの製品数を作成できます。

于 2012-09-23T22:19:19.210 に答える
0

のようなURLを\Home\Garden\LawnCare使用し、.htaccessとmod_rewriteを使用してそれらを書き換えることができます。ユーザーがGardenまたはHomeをクリックすると、要求されたページに簡単に戻ることができます...これは問題の非常に簡単な解決策です...

于 2012-09-23T22:11:24.573 に答える