2009-03-02 71 views
2

這就是我的情況:我正在建立一個小型網站,在註冊時,您可以選擇哪些天可用於某些事情。讓PHP在沒有大量變量的情況下獲得可用天數

Mondaymorning Mondayafternoon Tuesdaymorning Tuesdayafternoon 等等

所有以sundayafternoon的方式。

我正在使用PHP格式化這個offcourse,我需要聲明14個變量並遍歷每個變量以確定是否單擊了複選框。

現在我想知道,是不是有一個更簡單的方法?現在,這些是複選框,它不像上傳文件時只需將[]添加到HTML中的名稱屬性,並且它們以數組形式上載。

但是,這將是方便的。有人知道我能如何得到這樣的東西嗎?

回答

10

實際上,您只需在名稱的末尾添加[],只要確保以不同的方式設置所有值即可。

<input type="checkbox" name="available[]" value="Mon AM" /> 
<input type="checkbox" name="available[]" value="Mon PM" /> 

然後剛過您的表單處理代碼$_POST['available']陣列循環。

+0

不知道。謝謝。 – Vordreller 2009-03-02 06:12:03

1

建立在乍得的答案,這裏是你會使用經過變量的代碼:

foreach($_POST['available'] as $a) 
{ 
    //Do stuff with $a 
} 
1

如果您擔心安全性,還是性能,你應該,也許你應該這樣做,以及。

If (count($_POST['available']) > 14) { 

    softErrorToClient('The data you entered could not be analysed. Please try again.'); 
    // log this error... someone's being naughty 

} 
相關問題