强制指针在postgres结果数组上重置

时间:2015-06-14 23:53:57

标签: php

我正在尝试为我的推销员制作一个日程表,列出他们本周排队的客户。

我有一张桌子可以将每个排队的客户端存储为条目。

我有一个SQL语句,可以解决所有这些问题,我试图获得一个看起来像这样的布局:

Monday | Tuesday | Wednesday | Thursday | Friday

然后我想将所有条目转储为表格中每一列下的div。

sql数据不按天分组,因此它将返回如下内容:

array("Monday","Joe blow"); // index 0
array("Monday","Sally Smith"); // index 1

等等。

我从声明中检索结果后立即放置了这个:

while ($row = pg_fetch_array($result,null,PGSQL_ASSOC) {

}

这会遍历每一行。

但是当我需要在一列下转储多行时会发生什么?

我正在思考一些代码:

while ($row = pg_fetch_array($result,null,PGSQL_ASSOC)) {

    while ($row['day']=="Monday") {
       echo '<div>'.$row['client_name'].'</div>';
    }

    while ($row['day']=="Tuesday") {
       echo '<div>'.$row['client_name'].'</div>';
    }

}
然而,由于指针未在原始while循环上重置以获取下一条记录,因此它似乎在每次点击“星期四”时都返回true,但是它没有去任何地方。

我试图想出一种干净的方法来设置指向下一条记录的指针,并在原始的while循环中重新开始。

有人对此有所了解吗?

万分感谢!

1 个答案:

答案 0 :(得分:0)

我找到了它!

要使用的功能是pg_result_seek()

中涵盖的{{1}}

谢谢rjdown!