サブカテゴリをそれぞれの親カテゴリと一致させようとしています。今のところ、ビューのメイン カテゴリ (本、洋服など) をハードコーディングし、すべてのサブカテゴリを取得する関数を用意してから、ビューで while ループを作成して、すべてのサブカテゴリをそのメイン カテゴリと一致させます。
必要なデータを配列に入れることができました。これは次のようになります。
array
1 =>
array
1 => string 'Medicine'
2 => string 'Fairy tales'
3 => string 'Novels'
2 =>
array
44 => string 'Men's Clothing'
45 => string 'Men's Accessories'
49 => string 'Women's Swimwear'
50 => string 'Boys'
51 => string 'Girls'
3 =>
array
52 => string 'Perfume Sprays'
53 => string 'Roll ons'
54 => string 'Deodorants'
64 => string 'Miscellaneous'
ここで、1、2、3 はメイン カテゴリ ID で、内部の配列は subcat_id => subcat_name に対応します。
私のモデルでは、次のようにしてこの配列を取得しました。
function getsub()
{
$this->db->select('sub_id,sub_name,cat_id');
$q = $this->db->get('subcategories');
$subcats = array();
foreach($q->result() as $row)
{
$subcats[$row->cat_id][$row->sub_id] = $row->sub_name;
}
return $subcats;
}
次に、私の見解では、どのカテゴリの下でも、while ループを作成して、その cat_id に一致するすべてのサブカテゴリを表示します。
<ul class="dropdown-menu">
<?php while($subcats['cat_id'] == 1)?>
<?php{?>
<li><a href="main/sub_prod/<?php echo $subcats['sub_id'];?>">
<?php echo $subcats['sub_name'];?></a></li>
<?php}?>
</ul>
しかし、各リスト項目を作成する行で、「undefined index: 'subcat_name'」というエラーが表示されます。そのリスト項目の subcat_id についても同様です。誰かが何が悪いのか教えてもらえますか? ありがとうございました