2016-10-06 51 views
-2

我有2個MySQL表工具欄和subtoolbar2的foreach與MySQL查詢

工具欄

| id | toolbar | status | 

| 1 | Usuarios | ACTIVE | 

| 2 | Bancas | ACTIVE | 

| 3 | Balance | ACTIVE | 

subtoolbar循環

| id | subtoolbar | toolbarid | status | 


| 1 | Editar  | 1   | ACTIVE | 

| 2 | Agregar | 1   | ACTIVE | 

| 3 | Bancas  | 2   | ACTIVE | 

| 4 | Listeros | 2   | ACTIVE | 

| 5 | Agencias | 2   | ACTIVE | 

| 6 | Taquillas | 2   | ACTIVE | 

| 7 | Layout  | 3   | ACTIVE | 

我想列出每個報告其報表,所以我嘗試了以下

$res=mysql_query("select * FROM toolbar"); 

$num_rows = (mysql_num_rows($res) -1); 

while ($x = mysql_fetch_assoc($res)){ 

    $toolid[] = $x['id']; 

    $toolbar[] = $x['toolbar']; 

    $toolstatus[] = $x['status']; 

} 

在PHP

foreach (range(0, $num_rows) as $number) { 

$res1=mysql_query("select * FROM subtoolbar where 

toolbarid='$toolid[$number]'"); 

$num_rows2 = (mysql_num_rows($res1) -1); 

while ($y = mysql_fetch_assoc($res1)){ 

    $subtoolid[] = $y['id']; 

    $subtoolbar[] = $y['subtoolbar']; 

    $toolbarid[] = $y['toolbarid']; 

    $subtoolstatus[] = $y['status']; 

} 


echo $toolbar[$number]; 

foreach (range(0, $num_rows2) as $number2) { 

echo $subtoolbar[$number2]; 

}} 

,結果走出這樣

USUARIOS

  • Editar

  • Agregar

Bancas

  • Editar

  • Agregar

  • Bancas

  • Listeros

餘額

  • Editar
+0

你要問什麼?請注意您的問題 – KinjalMistry

+0

注意:{}'通常在格式化代碼方面做得非常好。 – tadman

+0

我試圖得到下面的結果 – Zax

回答

0

請試試這個方法: 但是一定要記住:

  1. 必須使用mysqli_ (),而不是mysql_()
  2. 檢查數組是否不爲空&值是否設置。

    $res=mysql_query("select t.id,t.toolbar,st.* FROM toolbar t left join 
        subtoolbar st on t.id=toolbarid where t.status='ACTIVE' and 
        st.status='ACTIVE'"); 
    
    if(mysql_num_rows($res)>0) 
    { 
        while ($rs = mysql_fetch_assoc($res)){ 
         $retArr[$rs['toolbarid']][] = array("toolbar"=>$rs["subtoolbar"], "subtoolbar"=>$rs["subtoolbar"]); 
        } 
    } 
    
    foreach($retArr as $rs) 
    { 
    $cnt=0; 
    
        foreach($rs as $toolbarName => $data) 
        { 
        if($cnt==0) 
        { 
         echo $data["toolbar"]."<br>"; 
        } 
        $cnt++; 
        echo $data["subtoolbar"]."<br>"; 
    
        } 
    
    } 
    
+0

謝謝你dipantwita kundu完美的工作。只有你必須修改數組(「toolbar」=> $ rs [「subtoolbar」]爲下面的數組(「toolbar」=> $ rs [「toolbar」] – Zax

0

我分享我自己的代碼,在正常工作我的定點

<div id="navbar" class="navbar-collapse collapse"> 

          <ul class="nav navbar-nav"> 
          <?php 
          $Clsmenu = new Menus; 
          $menu_res = mysql_query("SELECT * FROM `nav_menus`");(); 
          while($menu_details=mysql_fetch_array($menu_res)) 
          {        
           $sub_menu_query=mysql_query("SELECT * FROM `category` WHERE `Menu_id`='$menu_details['id']'"); 
           if(mysql_num_rows($sub_menu_query)) 
           {?> 
           <li class="dropdown"> 
            <a href="category.html" class="dropdown-toggle" data-toggle="dropdown"><?php echo $menu_details['name']; ?></a> 
            <ul class="mega_dropdown dropdown-menu" style="width: 830px;"> 
             <?php 
             while($submenu_relation_details=mysql_fetch_array($sub_menu_query)) 
             { 
            ?> 
             <li class="block-container col-sm-2"> 
              <ul class="block"> 
               <li class="link_container group_header"> 
                <a href="#"><?php echo $submenu_relation_details['name']; ?></a> 
               </li> 
               <?php 
                $sub_menu=mysql_query("SELECT * FROM `sub_category` WHERE `cat_id`='$submenu_relation_details['id']'"); 
                $i=1; 
                while($data=mysql_fetch_array($sub_menu)) 
                { 
                ?> 
                <li class="link_container"><a href="Selectedproduct.php?id=<?php echo base64_encode($data['id']); ?>"><?php echo $data['name']; ?></a></li> 
                <?php 
                $i++; 
                } 
               ?> 
              </ul> 
             </li> 
             <?php 
             } 
             ?> 
             </ul> 

           </li> 

           <?php 
           } 
           else 
           { 
           ?> 
           <li> 
           <a href="category.html" ><?php echo $menu_details['name']; ?></a></li> 
           <?php 
           } 

          } 
          ?> 
          </ul> 

         </div> 

I am sharing you Image also, Please click on me.

+0

)如果你的代碼正在工作,那麼沒有問題,但會不建議在循環中執行查詢 –

+0

是的,我的代碼工作正常我已經使用這些代碼在很多網站上顯示菜單,它的子菜單 –

+0

你也可以試試。 –