2014-04-01 127 views
0

我wan't使用MySQL查詢,選擇從數據庫中的數據,然後保存在變量每個值,所以我會回聲出後者 這是我的PHP符合MySQL的顯示結果在PHP

$sql = "SELECT username FROM users Order by ID Desc Limit 0,5"; 
$query = mysqli_query($con, $sql); 


while($row = mysqli_fetch_array($query)) 
    { 
    $a = $row['0']; 
    $b = $row['0']; 
    $c = $row['0']; 
    } 
echo $a ."<br>" .$b ."<br>" .$c."<br>" ; 

它顯示出結果這樣相同的名稱

John 
john 
john 

我想讓它像這樣

John 
Richerd 
Tony 
+0

這是顯示約翰,約翰,約翰,因爲你不斷更新你的變量,每次迭代,因此只留下約翰.. –

回答

1

你覆蓋你r變量與每次迭代只留下最後一次迭代的名稱。您應該捕獲數組中的名稱,然後在捕獲所有名稱時顯示它們。 implode()使得添加<br>標籤容易。

$users = array(); 
while($row = mysqli_fetch_array($query)) { 
    $users[] = $row['0']; 
} 
echo implode('<br>', $users) . '<br>'; 
+0

是的,它的工作:) – user3478845

1

$row變量每次迭代只更新一次。

$sql = "SELECT username FROM users Order by ID Desc Limit 0,5"; 
$query = mysqli_query($con, $sql); 


while($row = mysqli_fetch_array($query)) 
{ 
    echo $row['0']."<br>"; 
} 

請注意,該變體最後會添加一個附加的<br>標記。因此,正如其他答案中提出的那樣,implode()函數將是更好的方法。

+0

+1這個答案一樣有效,使用較少的代碼。 –