$stuff = mysql_query("SELECT * FROM users");
while($s = mysql_fetch_array($stuff)){
# ....
}
while($r = mysql_fetch_array($stuff)){
# ...
}
的最後一段時間()不工作。我曾嘗試運行foreach($ stuff作爲$ s),但後來我得到無效的數組錯誤。
我該如何使用相同的查詢兩次?
$stuff = mysql_query("SELECT * FROM users");
while($s = mysql_fetch_array($stuff)){
# ....
}
while($r = mysql_fetch_array($stuff)){
# ...
}
的最後一段時間()不工作。我曾嘗試運行foreach($ stuff作爲$ s),但後來我得到無效的數組錯誤。
我該如何使用相同的查詢兩次?
$stuff = mysql_query("SELECT * FROM users");
while($s = mysql_fetch_array($stuff)){
# ....
}
// add this line
mysql_data_seek($stuff, 0);
while($r = mysql_fetch_array($stuff)){
# ...
}
應該做的伎倆
另一種方法當然是你的結果存儲在一個陣列和重用
'mysql_data_seek($ stuff,0);' 這裏是手冊:[mysql_data_seek函數](http://www.php.net/manual/en/function.mysql-data-seek.php) –
無字。 .. thanx ..超讚:) –
$stuff = mysql_query("SELECT * FROM users"); while($s = mysql_fetch_array($stuff)){ # .... } mysql_data_seek($stuff, 0); while($r = mysql_fetch_array($stuff)){ # ... } //ref: http://www.php.net/manual/en/function.mysql-data-seek.php
如果您用戶「的foreach」而不是「而」你不會有任何問題,無需mysqli_seek_data():
//1st loop :
foreach($stuff as $row)
{
echo $row['...'];
}
...
//2nd loop :
foreach($stuff as $row)
{
echo $row['...'];
}
這裏是另外一個簡單的解決方案:
$slq = "SELECT * FROM users";
$stuff1 = mysql_query($slq);
while($s = mysql_fetch_array($stuff1)){
# ....
}
$stuff2 = mysql_query($slq);
while($r = mysql_fetch_array($stuff2)){
# ...
}
將sql分配給一個變量,並多次調用mysql。
沒有更多的MySQL。使用mysqli或pdo
我認爲你需要重置數組到開始,然後再嘗試重用它,因爲你已經到達第一個結果集的末端。 –
請停止使用outdate'mysql_ *'函數學習如何使用[PDO](http://php.net/pdo)並準備好語句。 –