我對PHP很新,我意識到我有很多東西需要學習,特別是關於SQL注入攻擊和新的php 5.5的東西。從列中返回結果到數組
但是,雖然我正在學習,我嘗試玩一下,實驗,我遇到了一個問題。我需要將我的查詢的一列(team_name)的所有結果放入一個數組(零索引會更容易),以便我可以將這些結果放入foreach循環中以創建一個夾具列表。例如 - 這是我願意做的數據...
foreach ($teams as $team) {
foreach ($teams as $opposition) {
if ($team != $opposition) {
echo "$team versus $opposition";
}
}
}
所以我的SQL查詢如下什麼...
$query="select * from pool_a";
$result=mysql_query($query);
$num=mysql_num_rows($result);
然後,我可以很容易地將數據輸出我尋找如下;
echo "<table>";
for ($i=0;$i<$num;$i++) {
$teams=mysql_result($result,$i,'team_name');
echo "<tr><td>$teams</tr>";
}
echo "</table>";
但我不能做的是將數據獲取到數組中。我認爲從上面的msql_query返回的數據總是以數組形式返回,無論結果的數量如何,但是如果我在$ teams上運行is_array()檢查,它將返回false。
我已經嘗試過使用爆炸(在每個團隊名稱後面添加逗號並修剪最後一個關閉之後),然後使用foreach循環但它只返回與索引[0]關聯的值。我應該在這裏補充一點,儘管關鍵字是0,但我得到的實際值是列表中的最後一個,如上所述,我也不明白。
任何幫助將不勝感激。
感謝
$ result_array = mysql_fetch_array($ result); – raygo
是否會在現有查詢下替換某些內容或添加的代碼行?謝謝 – DJC
使用'mysql_ *'函數是非常不鼓勵的。您應該儘快開始使用MySQLi或PDO進行與數據庫相關的任務。 – Aborted