0
我有2個查詢。 我正在應用第一個select查詢,並使用my_fetch_array通過while循環獲取結果,但是,在此期間,我正在使用另一個select查詢,但是在那時我收到一個錯誤。錯誤while while循環中使用mysql查詢獲取以前的查詢
我不能在這段時間內使用另一個選擇嗎?
$i = 1;
$result1 = mysql_query("SELECT x, count(*) FROM table1 group by x ORDER BY count(*) desc");
while ($rowRes1= mysql_fetch_array($result1))
{
echo "<tr>";
echo "<td ALIGN=CENTER style=width:5%>" . $i . "</td>";
echo "<td ALIGN=CENTER style=width:40%>" . $rowRes1['0'] . "</td>";
echo "<td ALIGN=CENTER style=width:10%>" . $rowRes1['1'] . "</td>";
$result2 = mysql_query("SELECT x FROM data where x = $rowRes1['0'] ORDER BY y ASC LIMIT 1")
while ($rowRes2= mysql_fetch_array($result2))
{
echo "<td ALIGN=CENTER style=width:10%>" . $rowRes2['0'] . "</td>";
}
$i++;
}
一般提示:如果你得到一個錯誤,告訴我們錯誤是什麼。第二個查詢中的$ rowRes1 ['0']'是一個PHP語法問題 - 你不能在這樣的雙引號字符串中使用帶引號的數組鍵。你也生成可怕的HTML。 'CETER'不是有效的對齊值,並且您的樣式沒有引用。您的兩個查詢也可以輕鬆地重寫爲單個查詢。 –
錯誤#1:在新代碼中使用'mysql_query'。不要這樣做。這是一個已被棄用的界面,將在未來版本的PHP中被刪除。如果可以,請使用[PDO](http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/)。錯誤#2:錯誤[SQL轉義](http://bobby-tables.com/php)。 – tadman
@MarcB非常感謝您的反饋。我是一名PHP新手,剛剛開始。 CENTER對齊值是一個得到糾正的錯字。我還修復了雙引號內的引用數組鍵。然而,你可以在單個查詢中寫兩個查詢(如果可能的話),因爲我想用它作爲參考。 – tony9099