我有这个基本查询,它返回程序标题(eventdesc)的主行,然后将程序参与者和信息列为多个子行。
计划 1
电子邮件 1,电子邮件 2,姓名,状态(第一位参与者)
电子邮件 1,电子邮件 2,姓名,状态(第二位参与者)
计划 2
电子邮件 1,电子邮件 2,姓名,状态(第一位参与者)
ETC...
基本查询:
$query_perpage = "SELECT COUNT(*) FROM camps_events";
$result = mysql_query($query_perpage, $db) or die(mysql_error());
$r = mysql_fetch_row($result);
$numrows = $r[0];
$pages = new Paginator($query);
$pages->items_total = $numrows;
$pages->paginate();
$pages->mid_range = 7;
$query = mysql_query("SELECT ce.eventcode, ce.eventdesc, ce.date, r.participant_fname, r.participant_lname,
r.position, r.dob, r.status, r.email_primary, r.order_number
FROM camps_events ce
RIGHT JOIN registrations r on r.eventcode = ce.eventcode
WHERE ce.reg_status = 'Active'
AND r.status NOT IN ('Incomplete','Canceled')".getAllowedPrograms()."
ORDER BY ce.eventdesc, ce.eventcode, r.participant_lname ASC $pages->limit ") or die(mysql_error());
我一直在试图弄清楚如何按程序对其进行分页,无论有多少子行。我在另一个页面上有一个分页类,但这只能从一个表中提取。
我一直在尝试实现相同的分页,但我只能让它拉第一个程序,然后它根据子行而不是主程序行来限制页面。在我在这里发布的状态下,接下来的每个页面都只显示第一个程序。出现的子行在每一页上都不同,但我不知道它们是否都在第一个程序中。
该查询可以正常提取所有结果,但如果它是一个巨大的列表,则效率极低,甚至可能使浏览器超时。
任何帮助将不胜感激,如果我可以包括其他任何内容,请告诉我。
我不太关心使用相同的分页类,所以我对不同的方法完全开放。
提前致谢