2014-09-03 29 views
0

我嘗試使用'list'和'foreach'列出gallary的概述,但我總是從我的數據庫中得到一個(最早的)結果。使用'list'和#foreach'獲取數組中的所有值

我用這個

while($row = mysql_fetch_array($result)){ 

      $galpath1 = "galerie/"; 
      $gal_title = $row['gal_title']; 
      $gal_path= $galpath1.$row['uploads']; 
      $nickname = $row['nickname']; 
      $added = $row['format_date']; 



      $galshow = [ 
         [$gal_path, $gal_title, $added], 
        ]; 
      } 
if(!empty($gal_path))  
{ 

var_dump($galshow); 
foreach ($galshow as list($gal_pathes, $gal_titles, $addeds)) { 
List of galerys 
} 

我怎樣才能把它的工作,這樣我可以列出相匹配的選擇在我的數據庫中的所有gallerys?

非常感謝你cdhowie 你救了我的一天。這正是我做錯了。 謝謝你的快速回復。 :)

回答

1

每次迭代while循環你覆蓋$galshow與包含一個元素的新數組。結果,這個數組只會包含一個元素,並且它將是從數據庫中獲取的最後一行。

相反,創建一個新的數組的循環之外並向其追加在循環內:

$galshow = array(); 

while($row = mysql_fetch_array($result)){ 
    $galpath1 = "galerie/"; 
    $gal_title = $row['gal_title']; 
    $gal_path = $galpath1.$row['uploads']; 
    $nickname = $row['nickname']; 
    $added = $row['format_date']; 

    // This syntax will append a new array to the end of the $galshow array. 
    $galshow[] = [$gal_path, $gal_title, $added]; 
} 
相關問題