0

データベース テーブルのカテゴリとサブカテゴリをドロップダウン メニューに動的に入力しようとしています。私の問題は、サブカテゴリをループして正しいカテゴリに表示する方法がわからないことです。

私の SQL データベースには、id、category、subcategory の 3 つの列を持つ「Categories」というテーブルがあります。サブカテゴリ列のサブカテゴリは、3 つのコロン マーク (Artists:::Childcare:::Classes:::Event) で区切られています。

html で順序付けられていないリストを使用して、ドロップダウン メニューにデータを入力しています。

<ul id="menu">
<li><a href="#">button</a>
<ul>

<?php 

while($allCategories=mysql_fetch_assoc($resultre1)){ ?>

<li><a href="#"><div class="whatever"<?php print      
$relanguage_tags[$allCategories['category']];?> 
<?php if(in_array($relanguage_tags[$allCategories['category']],$reCategory)) 
print "selected='selected'"; ?> >
<?php print $relanguage_tags[$allCategories['category']]; ?></div></a> 

<?php } ?>

<ul>

<?php 
 if($ptype=="showOnMap" || $ptype=="viewFullListing" || $ptype=="home" || $ptype==""){
$reCategoryString=getCommaStringFromArray($reCategory);
$reqr2="select * from $categoryTable where id like '%' ".getRealValue($reCategoryString,"reCategory");
$resultre2=mysql_query($reqr2);
?>

<?php 

while($allSubCategories=mysql_fetch_assoc($resultre2)){ 
$subCatList=explode(":::",$allSubCategories['subcategories']);
$subCatSize=sizeof($subCatList);
for($i=0;$i<$subCatSize;$i++){

?>

<li><a href="#"><div class="whatever"<?php print $relanguage_tags[$subCatList[$i]];?>' 
<?php if(in_array($relanguage_tags[$subCatList[$i]],$reSubcategory)) print   "selected='selected'"; ?> ><?php print $relanguage_tags[$subCatList[$i]]; ?></div></a></li>
<?php }

} ?>

<?php } ?>



         </ul>
        </li> 
 </ul>
</li>


</ul>
4

1 に答える 1

0
$subCatList=explode(":::",$allSubCategories['subcategories']);
$subCatSize=count($subCatList);
for($i=0;$i<$subCatSize;$i++){
      echo "<li>".$subCatList[$i]."</li>";
?>

これが答えでない場合は、私があなたの質問をよく理解していなかったことを意味します。

編集

カテゴリ テーブルからすべてのサブカテゴリを表示する関数を作成します。

function subCategories($category){ 
     $subCategories="";
      while($r=mysql_fetch_assoc(mysql_query("select * from ".$category.""))){
         $subCategories.="<li>".$r['subCategory']."</li>";
      }
     return $subCategories;
}

echo subCategories("Housing");各カテゴリタグでこのようにこの関数を呼び出します。それが役に立ったことを願っています!

于 2012-06-23T20:09:23.063 に答える