我想在我的頁面上顯示有關多個查詢的信息,每個查詢都代表項目狀態。要做到這一點,我做了一個while循環,爲數組添加信息。如何將多個值添加到同一個陣列
問題是,我只顯示其中一個可用的狀態,只有第一個。這裏是我的代碼:
$exec = mysql_query($queryOntime) or trigger_error(mysql_error());
$exec1 = mysql_query($queryDelayed) or trigger_error(mysql_error());
$exec2 = mysql_query($queryPending) or trigger_error(mysql_error());
$array_dados = array();
// All chart data
while($info = mysql_fetch_array($exec)||$info1 = mysql_fetch_array($exec1)||$info2 = mysql_fetch_array($exec2)){
$array_dados[] = $info;
$array_dados[] = $info1;
$array_dados[] = $info2;
}
return $array_dados;
因此,大家可以看到,我有3個疑問,我嘗試將所有的人都到一個數組,但只有$信息的一個顯示出來。這是爲什麼?
編輯:
我刪除了OR和我分開取陣列,但它仍然只顯示「待定」之一。下面是它的外觀現在:
$exec = mysql_query($queryPending) or trigger_error(mysql_error());
$exec1 = mysql_query($queryOntime) or trigger_error(mysql_error());
$exec2 = mysql_query($queryDelayed) or trigger_error(mysql_error());
$array_dados = array();
//All chart data
while($info = mysql_fetch_array($exec))
$array_dados[] = $info;
while($info1 = mysql_fetch_array($exec1))
$array_dados[] = $info1;
while($info2 = mysql_fetch_array($exec2))
$array_dados[] = $info2;
return $array_dados;
在PHP中,一旦鬆散評估爲真,不會評估OR邏輯中的後續條件,因此如果您第一次調用mysql_fetch_array返回任何內容,則其他條件將不會運行。 – iainn
我明白了。所以我必須使用AND? – RazorFinger
使用AND將意味着**所有**查詢必須返回相同數量的行,或者在第一個返回任何內容後的所有行都不會運行(基本上與您現在擁有的相反的問題) 。不要試圖強制一切成一行。 – iainn