[英]mysql_fetch_assoc fetching only one record
我有一個包含查詢結果的數組:
.....some code.....
$result = mysql_query("SELECT * FROM vttest");
$row = mysql_fetch_assoc($result);
print_r($row);
但它只打印一條記錄,我不能把$ row放在一個循環中,因為我將在稍后對該變量進行排序。
Array
(
[id] => 3
[rep] => Mike
[name] => Joe
[department] => Business
[location] => Room 1
[email] => xxxx@hotmail.com
[phone] => 519-123-4567
[type] => Visit
[drink] => Coffee
[notes] => Some notes
[lastVisited] => 2010-08-27
[nextVisit] => 2010-08-27
)
我知道有更多的記錄,我怎么能打印所有它仍然能夠使用$ row變量?
您實際上是獲得一條記錄,因為您需要使用循環來獲取所有記錄:
$my_arary = array();
while($row = mysql_fetch_assoc($result)){
$my_arary[] = $row;
print_r($row);
}
正如你所說,以后你可以使用$my_arary
做任何你喜歡的事情。
$result = mysql_query("SELECT * FROM vttest");
$data = array();
while($row = mysql_fetch_assoc($result)){
array_push($data, $row);
}
你需要把它放在一個循環中。 然后,如果您以后需要處理該變量,請使用mysql_data_Seek
重置內部結果指針:
mysql_data_seek($result, 0);
// your later code.
你幾乎擁有它,你需要使用一個循環來獲取每一行的結果,並且當你這樣做時,將每一行分配給一個表。
以下是您正在尋找的東西。
$result = mysql_query("SELECT * FROM vttest");
while($row = mysql_fetch_assoc($result)){
$rows[] = $row;
}
然后,您需要做的就是訪問該數組,如下所示。
foreach($rows as $index => $value){
print_r($value);
}
foreach將在您的陣列中一次打印一行,讓您根據需要縮短或使用該數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.