2012-09-06 99 views
1

我正在從中發送大量電子郵件給選定的參與者組(註冊參與程序的人員)。檢查數據庫中的複選框的值

形式如下:

1)(複選框)項目名稱開始日期

2)(複選框)項目名稱開始日期

3)(複選框)項目名稱開始日期

4)(複選框)程序名稱開始日期

5)(複選框)程序名稱開始日期

假設您檢查了所有這些文件,但其中一個(例如編號爲3)沒有任何參與者註冊該程序。

當表單被提交時,會引發一個MySQL錯誤,並且任何程序參與者(在這種情況下,都不會收到發送給他們的電子郵件),而提交表單的用戶並不聰明。

<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

你不應該顯示覆選框......要做到這一點,你需要在你的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"; 
+0

mysql_select_db($ database_backoffice,$後臺); $ query_programs =「SELECT eventcodecode,eventdesc,date_format(date,'%m /%d /%Y')as format_date FROM camps_events WHERE reg_status!='Archived'」.getAllowedPrograms()。「ORDER BY eventdesc」; $ programs = mysql_query($ query_programs,$ backoffice)或die(mysql_error()); $ row_programs = mysql_fetch_assoc($ programs); $ totalRows_programs = mysql_num_rows($ programs); –

+0

db中有一個叫做registrations的表格,帶有一個eventcode列。此列顯示所有活動註冊,所以如果程序爲空,則此列中不會顯示事件代碼。 –

+0

並感謝您的答覆。 –

相關問題