2012-04-10 86 views
0

我想要做的是顯示5個隨機圖像,其中包含特定數字的文本而不重複。圖像和文本的鏈接將存儲在數據庫中。我遇到的問題是我需要將每個ID值放入單個PHP數組中以便隨機播放ID並隨機選擇5,但如果我有3行I結束,則我將它們組合到一個數組中時失敗與3個陣列。PHP MySQL表格統一單個表格中的行的值

這是使用3行一個失敗的代碼與ID 1,2,4的例子:

function getAll() { 
$query = mysql_query("SELECT * FROM ads") or die(mysql_error()); 
$myarray = array(); 
    while ($numbers = mysql_fetch_array($query)){ 
    $arr = $numbers['ID'].","; 
    print_r (explode(",", $arr)); 
    } 
}; 

這是輸出:

Array ([0] => 1 [1] =>) Array ([0] => 2 [1] =>) Array ([0] => 4 [1] =>) 

這是所需的輸出:

Array ([0] => 1 [1] => 2 [2] => 4) 

猜猜這是一個noob問題,但我已盡力尋找解決方案並失敗。

回答

0

簡單的解決方案:直接在你的MySQL查詢中使用ORDER BY RAND()洗牌結果:

SELECT * FROM ads ORDER BY RAND() LIMIT 5 
0

我想你應該看看阿爾卑斯的解決方案,而是直接回答你的問題 - 把這個在您的while循環。

array_push($arr,$numbers['Id']); 

但第一循環之前聲明變量:

$arr = array(); 
相關問題