2009-01-09 14 views
14

मैं एक सरणी चेक बॉक्स का पूरा पोस्ट करने के लिए और अगले पृष्ठ में खोलने के लिए कोशिश कर रहा हूँ ..सरणी PHP में पोस्टिंग

यह केवल मुझे पिछले परिणाम देता है, किसी को पता क्यों? या इसे कैसे ठीक करें?

<form name="input" action="createevent.php" method="post"> 

Event title: 
<input type="text" name="Eventtitle" size="20"> 
<br>Event Description 
<input type="text" name="Description" size="20"> 
<br> 
Please select the days that you are free to arrange this meeting.<br> 
Monday 
<input type="checkbox" name="day" value="Monday" /> 
<br /> 
Tuesday 
<input type="checkbox" name="day" value="Tuesday" /> 
<br /> 
Wednesday 
<input type="checkbox" name="day" value="Wednesday" /> 
<br /> 
Thursday 
<input type="checkbox" name="day" value="Thursday" /> 
<br /> 
Friday 
<input type="checkbox" name="day" value="Friday" /> 
<br /> 
Saturday 
<input type="checkbox" name="day" value="Saturday" /> 
<br /> 
Sunday 
<input type="checkbox" name="day" value="Sunday" /> 
<br /><br /> 
<input type="submit" value="Submit"> 

और इससे कोई फर्क नहीं पड़ता कि आप इसे कितने चुनते हैं केवल अगले पृष्ठ पर एक ही परिणाम देता है। $ दिन = आकार ($ _ पोस्ट ['दिन']);

केवल कभी '1' उत्तर देता है। और जब मैं उन्हें अगले पृष्ठ पर ले जाता हूं तो मैं उन्हें अलग से चुनने में सक्षम होना चाहता हूं।

धन्यवाद!

उत्तर

31

पीएचपी केवल स्वचालित रूप से अगर यह [] में समाप्त होता है एक सरणी में एक पोस्ट मूल्य कर देगा।

तो आपको केवल name="day" के बजाय name="day[]" होना चाहिए।

(ध्यान दें कि यह बजाय साहचर्य सरणियों के साथ किसी भी पोस्ट मूल्य के लिए काम करता है, और यह भी सिर्फ ऑटो incrementing - आप name="foo[bar]" कर सकते हैं, और आप $_POST['foo']['bar'] प्राप्त होगी ...)

7

कारण आपको केवल एक परिणाम मिल रहा है क्योंकि आप एक ही नाम के साथ कई फ़ील्ड पोस्ट कर रहे हैं, इसलिए डिफ़ॉल्ट रूप से अंतिम पिछले सभी को ओवरराइट करता है। इस तरह अपने HTML में एक सरणी बनाने का प्रयास करें:

Monday 
<input type="checkbox" name="day[]" value="Monday" /> 
<br /> 
Tuesday 
<input type="checkbox" name="day[]" value="Tuesday" /> 
<br /> 
Wednesday 
<input type="checkbox" name="day[]" value="Wednesday" /> 

और इसी तरह सूची के ...

संबंधित मुद्दे