2014-12-02 25 views
2

我試圖在我的html中正確輸出我的查詢數據。循環播放結果並僅顯示每個類別的教育一次

我試圖讓我的一組結果輸出,以便從匹配特定Education_ID和教育的數據庫中的每一行只顯示一個時間段類別(例如高中文憑/蓋德,Post secondary certificate,等等)?目前它多次展示 - 「高中文憑或Ged」。

我想嘗試獲得高中畢業文憑或GED,高等證書,只顯示一次。

謝謝您的幫助。

回答

1

您可以爲每個教育級別構建一個關聯數組,然後遍歷每個數組。

如構建您的數組如下

<?php 

    $pathwaySteps_grouped_by_education=array(); 

    foreach ($pathwaySteps as $step => $paths): 
     $pathwaySteps_grouped_by_education[$paths['Education_ID']][$step]=$paths; 
    endforeach; ?> 

然後在你的陣列迭代爲您顯示的記錄

<?php foreach ($pathwaySteps_grouped_by_education as $education_id=>$pathsgroup): ?> 
      <div class="pathway-step 
       <?php #if (count($pathsgroup) == 1) echo 'single'; ?> 
       <?php if ($currentEd == $education_id) echo 'you-are-here'; ?>"> 
       <div class="pathway-content"> 
        <?php $showeducationname=true; ?> 
        <?php foreach ($pathsgroup as $job): ?> 
         <?php if($showeducationname): ?> 
         <h4><?php echo ucwords($job['Ed_Name']) ?></h4> 
         <?php $showeducationname=false; ?> 
         <?php endif; ?> 
         <div class="job"> 

          <h5><?php echo $job['GroupName'] ?></h5> 

          <dl> 
           <dt>Entry Wage</dt> 
           <dd><?php echo $job['EntryWage'] ?></dd> 
           <dt>Median Wage</dt> 
           <dd><?php echo $job['MedianWage'] ?></dd> 
           <dt>Job Outlook</dt> 
           <dd><?php echo ucwords($job['Job_Outlook']) ?></dd> 
          </dl> 
         </div> 
        <?php endforeach; ?> 
       </div> <!-- pathway-content --> 
      </div> <!-- pathway-step --> 
     <?php endforeach; ?> 
+0

這個效果很好,問題是,它是重複多次的教育水平現在(請參閱上面的NEW OUTPUT) – CodeTalk 2014-12-02 16:23:32

+0

我已經引入flag $ showsucationname來確保教育級別標題顯示一次 – 2014-12-02 16:53:52

+0

哇,非常感謝Simon! – CodeTalk 2014-12-02 17:37:48