我试图执行以下操作:
while ($row = mysql_fetch_assoc($result){
...
}
...
while ($row2 = mysql_fetch_assoc($result){
...
}
但它不起作用。第二个循环中的命令永远不会运行。我猜这与mysql函数的指针有关,必须重置。如果是这样,怎么做?
答案 0 :(得分:4)
使用函数mysql_data_seek
http://www.php.net/manual/en/function.mysql-data-seek.php
虽然你应该考虑升级到不使用mysql_ *函数
答案 1 :(得分:4)
避免使用以mysql_
开头的任何函数,不推荐使用它们。使用PDO
,您可以按照自己的意愿行事:
$pdo = new PDO(/**/); // [1]
$stmt = $pdo->prepare(/* query */); // [2]
$stmt->execute(); // [3]
$rows = $stmt->fetchAll(); // [4]
foreach($rows as $row)
{
//
}
foreach($rows as $row2)
{
//
}
上面引用的行的指南:
[1]
- PDO::__construct()
[2]
- PDO::prepare()
[3]
- PDOStatement::execute()
[4]
- PDOStatement::fetchAll()
答案 2 :(得分:1)
$result2 = $result;
while ($row = mysql_fetch_assoc($result){
...
}
...
while ($row2 = mysql_fetch_assoc($result2){
...
}