ताकि PHP में मैं के रूप में उन लोगों के साथ सौदा कर सकते हैं:PHP में सरणी के रूप में एकाधिक <इनपुट प्रकार = "चेकबॉक्स" /> पोस्ट कैसे करें?
foreach($_POST['checkboxname'] as $i => $value)
...
ताकि PHP में मैं के रूप में उन लोगों के साथ सौदा कर सकते हैं:PHP में सरणी के रूप में एकाधिक <इनपुट प्रकार = "चेकबॉक्स" /> पोस्ट कैसे करें?
foreach($_POST['checkboxname'] as $i => $value)
...
क्या कुछ इस तरह:
<input type="checkbox" name="checkboxArray[]" />
नोट [] नाम पर।
इस तरह:
<input type="checkbox" name="checkboxname[]" />
<input type="checkbox" name="checkboxname[]" />
<input type="checkbox" name="checkboxname[]" />
<input type="checkbox" name="checkboxname[]" />
<input type="checkbox" name="checkboxname[]" />
बस उनके नाम के [] जोड़ देते हैं।
एक छोटी सी समस्या है !! अगर मैं 5 वें चेक बॉक्स की जांच करता हूं तो यह कुछ चीज होनी चाहिए जैसे 'ऐरे ([4] => चालू)' लेकिन यह 'ऐरे ([0] => पर प्रदर्शित होता है)' मुझे चेकबॉक्सनाम [1] जैसे मूल्यों को क्यों लागू करना चाहिए 'और 'चेकबॉक्सनाम [2]' ??? –
उन HTML फॉर्म तत्वों के लिए जो सर्वर पर एकाधिक मान भेज सकते हैं (जैसे चेकबॉक्स, या एकाधिक चयन बॉक्स), आपको अपने HTML तत्व नाम के लिए नाम जैसी सरणी का उपयोग करना चाहिए। इस तरह:
<input type="checkbox" name="checkboxname[]" />
भी यह अनुशंसा की जाती है कि आप अपने प्रपत्र तत्व के लिए "बहुखण्डीय/फार्म-डेटा" का एक enctype का उपयोग करें।
<form enctype="multipart/form-data" action="target.php" method="post">
फिर अपनी PHP स्क्रिप्ट में आप एकाधिक मूल्य डेटा को सरणी के रूप में एक्सेस कर सकते हैं, जैसा कि आप चाहते थे।
लगता है 'enctype' अनचाहे है। – user198729
यदि आप चेकबॉक्स के लिए सरणी का उपयोग करते हैं, तो आपको एकल चेकबॉक्स के लिए पहचानकर्ता के रूप में एक मान विकल्प जोड़ना चाहिए, क्योंकि तब लौटा सरणी ऐरे ([0] => पर, [1] => पर बदलती है) ऐरे ([0] => वैल्यू 1, [1] => वैल्यू 5), जो आपको चेक किए गए चेकबॉक्स की पहचान करने देता है।
+1 ग्रेट उत्तर। @ अज्ञात बस याद रखें कि यदि उनमें से कोई भी चेक नहीं किया गया है, तो फ़ील्ड भी 'foreach' विफल होने के कारण सबमिट नहीं किया जाएगा। 'Foreach' से पहले' isset ($ _ POST ['checkboxname']) का परीक्षण करना सुनिश्चित करें। –