2014-07-15 14 views
0

我在SQL數據庫中有一個「網站」列表,我想在網頁上顯示。我需要爲每個網站創建一個div ID。就目前我在做這個(取表爲$ _SESSION數組,獲取和顯示在一個循環中的網站的名稱,做一個回聲):在PHP中以服務器控制器在View中創建HTML列表

<div id='leftnavigation1' class="leftnavigation"> 
     <ul> 
      <?php 
       $maxKeys = max(array_keys($_SESSION['usersmeter'])); //check how many sites are in the usersmeter table 
       for ($i = 0; $i <= $maxKeys; $i++) { //loop every key in the array 
          $siteName = $_SESSION['usersmeter'][$i]['siteName'];  
       echo "<li id='siteID$i'><a href='#'><span>" . $siteName . "</span></a></li>"; //display the name of the sites 
       } 
      ?>       
     </ul> 
</div> 

它運作良好,但我認爲這將php代碼包含到視圖中是一種不好的做法。

我該怎麼辦? Javascript中的AJAX?

感謝,

+0

我建議做一個'foreach'循環,如果你真的想保持你的HTML乾淨,然後用一個模板引擎就像嫩枝或Smarty的或任何其他。 –

+0

@Janisimo謝謝,我會看看這些模板,但不知道我可以安裝它,因爲我使用互助主機。 – Yoan

+0

安裝它應該不會有任何問題,因爲它只是一個PHP庫,包含在您的項目中並使用它:)我更喜歡TWIG並將其用於我的所有項目。這真的很性感,它也使HTML性感:) –

回答

0
Like that you will br try: 

<?php  

    $my_array = array(
     'GSU4300' => 'Lili Markina', 
     'GSU4301' => 'John Kokina', 
     'GSU4304' => 'Bill Clinong', 
     'GSU4305' => 'Obamark Chiko' 
    ); 

    echo '<ul id="somethig">'; 
    foreach ($my_array as $k => $v) { 
     echo '<li id="' . $k . '">' . $v . '</li>'; 
    } 
    echo '</ul>'; 
    ?> 
+0

謝謝,我會用foreach代替。 – Yoan