我正在处理一个发送大量电子邮件给选定的参与者群体(注册参加某个计划的人)。
表格如下:
1)(复选框)程序名称开始日期
2)(复选框)程序名称开始日期
3)(复选框)程序名称开始日期
4)(复选框)程序名称开始日期
5)(复选框)程序名称开始日期
假设你检查了所有这些,但其中一个(例如3号)没有任何参与者注册该程序。
提交表单时,会抛出MySQL错误,任何程序参与者(在这种情况下为4&amp; 5)都不会收到发送给他们的电子邮件,提交表单的用户也不会更聪明。< / p>
<form id="email_form" name="email_form" action="email_broadcast_test.php" method="get">
<input name="pid[]" type="checkbox" class="eventCodeCheck" value="<?php echo $row_programs['eventcode']; ?>"/>
<input type="submit" value="Send Email" class="ButtonDefault" />
所以我需要弄清楚,更重要的是,学习并了解如何检查程序是否为空并发出警报以通知用户而不是提交表单。
我的另一个想法是能够在页面加载时检查程序是否为空,并禁用复选框。
OR,
选中复选框后发出警告,通知用户它是空的。
提前谢谢你。
答案 0 :(得分:0)
您不应该显示复选框...为此,您需要在MySQL查询中添加WHERE子句,以仅获取某人实际注册的程序。
如果您无法使用,则无法显示复选框。
如果您发布当前查询并稍微了解一下您的数据库,那么我可以帮助您更好。
您的查询可能是:
SELECT eventcode, eventdesc, date_format(date, '%m/%d/%Y') as format_date
FROM camps_events WHERE reg_status!= 'Archived'
AND eventcode IN (SELECT DISTINCT eventcode FROM registrations)
".getAllowedPrograms()." ORDER BY eventdesc";