-1

我有一个这样的脚本:

$result = array();
$sql = "SELECT DISTINCT Name FROM servers"; //doesn't really matter what this MySQL script is

//storing the same query in two different variables
$result[0] = mysql_query($sql);
$result[1] = $result[0];

for($i = 0; $i < 3; $i++) {

    $result[0] = $result[1];

    while($ret = mysql_fetch_array($result[0]) {
        //run some code
    }

}

不幸的是,上面的代码执行一次,然后在下一次迭代中什么也不返回。我究竟做错了什么?

4

1 回答 1

0

我不太确定你想做什么。但如果我明白,试试这个。删除 for 循环,只需放置 while 循环并做任何你想做的事情。

$sql = "SELECT DISTINCT Name FROM servers";
$result = mysql_query($sql);
    while($ret = mysql_fetch_array($result) {
        //run some code
        echo $ret['Name'];
    }
}

您将在每次迭代中获得所有 3 条记录,并为每条记录执行您想要执行的任何处理。无需对 3 条记录进行三 3 查询。一个查询将包含所有记录并执行 while 循环以获取每条记录。希望能帮助到你。

于 2013-01-18T12:32:23.857 回答