複数のクエリに関するページの情報を表示したいと思います。それぞれのクエリはプロジェクトのステータスを表します。これを行うために、私は配列に情報を追加するwhileループを作った。複数の値を同じ配列に追加する方法
問題は、使用できるステータスのうち1つのみを表示し、最初のステータスのみを表示することです。ここに私のコードは次のとおりです。あなたが見ることができるように
$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つのクエリを持っている、と私は、配列にそれらのすべてを追加してみてください、まだ一つだけ$情報のアップを示しています。何故ですか?
EDIT:
私は、ORを削除し、私のフェッチの配列を分離、まだそれはまだ唯一の「保留」1を示しています。ここでは、今どのように見えるかです:
$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を使用すると、**すべての**クエリは同じ数の行を返さなければならないことを意味します。何も返さない最初のものが実行されなかった場合、すべてのクエリは実行されません(基本的に現在のものとは逆の問題です) 。すべてを強制的に1行にしようとするのをやめてください。 – iainn