जवाबों:
यदि आपका HTML पृष्ठ इस तरह दिखता है:
<input type="checkbox" name="test" value="value1">
फॉर्म सबमिट करने के बाद आप इसे निम्न के साथ देख सकते हैं:
isset($_POST['test'])
या
if ($_POST['test'] == 'value1') ...
on
, जब वे चेक किए जाते हैं। इसलिए अनुकूलता के लिए यह सिर्फ उपयोग करने के लिए आसान है isset($_POST['checkboxName'])
।
value1
यदि चेकबॉक्स चेक किया गया है। यदि इसकी जाँच नहीं की जाती है, $_POST['test']
तो बस अस्तित्व में नहीं होगा।
Zend फ्रेमवर्क चेकबॉक्स पर एक अच्छी हैक का उपयोग करता है, जिसे आप स्वयं भी कर सकते हैं:
जनरेट किया गया प्रत्येक चेकबॉक्स उसी नाम के छिपे हुए क्षेत्र से जुड़ा हुआ है, जिसे चेकबॉक्स से ठीक पहले रखा गया है, और "0" के मान के साथ। फिर यदि आपका चेकबॉक्स मान "1" के रूप में है, तो आपको परिणामी GET या GST में हमेशा '0' या '1' मान मिलेगा
<input type="hidden" name="foo" value="0" />
<input type="checkbox" name="foo" value="1">
input[type="checkbox"]
?
एक सरणी के रूप में चेकबॉक्स का उपयोग करते समय:
<input type="checkbox" name="food[]" value="Orange">
<input type="checkbox" name="food[]" value="Apple">
आपको उपयोग करना चाहिए in_array()
:
if(in_array('Orange', $_POST['food'])){
echo 'Orange was checked!';
}
चेक करने के लिए याद रखें कि सरणी पहले सेट है, जैसे:
if(isset($_POST['food']) && in_array(...
foreach ($_POST['food'] as $selected_food)
चेक पर काम करने के लिए एक अच्छा है, धन्यवाद
अपने चेकबॉक्स के लिए अपने HTML की तरह होगा
<input type="checkbox" name="check1">
फिर अपना फॉर्म सबमिट करने के बाद आपको चेक करना होगा
if (isset($_POST['check1'])) {
// Checkbox is selected
} else {
// Alternate code
}
मान लें कि check1
आपका चेकबॉक्स नाम होना चाहिए। और यदि आपका फॉर्म सबमिट करने का तरीका है, GET
तो आपको $_GET
चर जैसे चेक करने की आवश्यकता है
if (isset($_GET['check1'])) {
// Checkbox is selected
}
$check_value = isset($_POST['my_checkbox_name']) ? 1 : 0;
मैं कई वर्षों से इस ट्रिक का उपयोग कर रहा हूं और यह PHP और डेटाबेस के साथ उपयोग करते समय चेक / अनियंत्रित चेकबॉक्स स्थिति के लिए पूरी तरह से बिना किसी समस्या के काम करता है।
HTML कोड: (जोड़ें पृष्ठ के लिए)
<input name="status" type="checkbox" value="1" checked>
संकेत: "चेकबॉक्स" को हटा दें यदि आप इसे डिफ़ॉल्ट रूप से अनियंत्रित दिखाना चाहते हैं
HTML कोड: (संपादित पृष्ठ के लिए)
<input name="status" type="checkbox" value="1"
<?php if ($row['status'] == 1) { echo "checked='checked'"; } ?>>
PHP कोड: (पृष्ठों को जोड़ने / संपादित करने के लिए उपयोग करें)
$status = $_POST['status'];
if ($status == 1) {
$status = 1;
} else {
$status = 0;
}
संकेत: उपयोगकर्ता द्वारा जाँच किए जाने तक हमेशा रिक्त मान रहेगा। इसलिए, हमारे पास पहले से ही PHP कोड है, इसे पकड़ने के लिए और मान को 0. पर रखें, फिर बस डेटाबेस के लिए $ स्थिति चर का उपयोग करें।
जाँचने के लिए कि क्या कोई चेकबॉक्स खाली है ()
जब फॉर्म जमा किया जाता है, तो चेकबॉक्स हमेशा सेट किया जाएगा, क्योंकि सभी POST चर फॉर्म के साथ भेजे जाएंगे।
जाँच करें कि क्या चेकबॉक्स को निम्न के साथ चेक किया गया है:
//Check if checkbox is checked
if(!empty($_POST['checkbox'])){
#Checkbox selected code
} else {
#Checkbox not selected code
}
आप अपने फॉर्म की कार्रवाई के आधार पर $ _POST या $ _GET सरणी में सेट किए जा रहे और गैर-खाली के रूप में संबंधित मूल्य की जांच कर सकते हैं।
अर्थात: name
"परीक्षण" का एक POST फ़ॉर्म के साथ (यानी:, <input type="checkbox" name="test">
आप उपयोग करेंगे:
if(isset($_POST['test']) {
// The checkbox was enabled...
}
इस बारे में जानें isset
कि एक "फ़ंक्शन" में बनाया गया है, जिसका उपयोग अगर किसी चर या सेट का उपयोग करने के लिए बयान करने के लिए किया जा सकता है
उदाहरण:
if(isset($_POST["testvariabel"]))
{
echo "testvariabel has been set!";
}
ठीक है, उपरोक्त उदाहरण केवल तब काम करते हैं जब आप एक मूल्य को सम्मिलित करना चाहते हैं, विभिन्न स्तंभों के लिए अलग-अलग मानों के लिए उपयोगी नहीं है, इसलिए यहां अद्यतन करने के लिए मेरी छोटी चाल है:
//EMPTY ALL VALUES TO 0
$queryMU ='UPDATE '.$db->dbprefix().'settings SET menu_news = 0, menu_gallery = 0, menu_events = 0, menu_contact = 0';
$stmtMU = $db->prepare($queryMU);
$stmtMU->execute();
if(!empty($_POST['check_menus'])) {
foreach($_POST['check_menus'] as $checkU) {
try {
//UPDATE only the values checked
$queryMU ='UPDATE '.$db->dbprefix().'settings SET '.$checkU.'= 1';
$stmtMU = $db->prepare($queryMU);
$stmtMU->execute();
} catch(PDOException $e) {
$msg = 'Error: ' . $e->getMessage();}
}
}
<input type="checkbox" value="menu_news" name="check_menus[]" />
<input type="checkbox" value="menu_gallery" name="check_menus[]" />
....
यह रहस्य केवल सभी वैल्यूज़ को पहले अपडेट करता है (इस मामले में 0 पर), और चूंकि वसीयत केवल चेक किए गए मानों को भेजती है, इसका मतलब है कि आपको जो कुछ भी मिलता है उसे 1 पर सेट किया जाना चाहिए, इसलिए आपको जो कुछ भी मिलता है उसे 1 पर सेट करना होगा।
उदाहरण PHP है लेकिन हर चीज के लिए लागू होता है।
मज़े करो :)
$is_checked = isset($_POST['your_checkbox_name']) &&
$_POST['your_checkbox_name'] == 'on';
शॉर्ट सर्किट मूल्यांकन का ध्यान रखा जाएगा, ताकि जब आप your_checkbox_name
इसे प्रस्तुत नहीं करते हैं तो आप एक्सेस न करें।
स्विच स्थिति बनाए रखने के साथ एक न्यूनतर बूलियन जांच
<?php
$checked = ($_POST['foo'] == ' checked');
?>
<input type="checkbox" name="foo" value=" checked"<?=$_POST['foo']?>>
<?php
if (isset($_POST['add'])) {
$nama = $_POST['name'];
$subscribe = isset($_POST['subscribe']) ? $_POST['subscribe'] : "Not Checked";
echo "Name: {$nama} <br />";
echo "Subscribe: {$subscribe}";
echo "<hr />";
}
?>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST" >
<input type="text" name="name" /> <br />
<input type="checkbox" name="subscribe" value="news" /> News <br />
<input type="submit" name="add" value="Save" />
</form>
बीएस 3 में आप डाल सकते हैं
<?php
$checked="hola";
$exenta = $datosOrdenCompra[0]['exenta'];
var_dump($datosOrdenCompra[0]['exenta']);
if(isset($datosOrdenCompra[0]['exenta']) and $datosOrdenCompra[0]['exenta'] == 1){
$checked="on";
}else{
$checked="off";
}
?>
<input type="checkbox" id="exenta" name="exenta" <?php echo $checked;?> > <span class="label-text"> Exenta</span>
कृपया के उपयोग पर ध्यान देंisset($datosOrdenCompra[0]['exenta'])
Wordpress का checked()
कार्य है। संदर्भ: https://developer.wordpress.org/reference/functions/checked/
checked( mixed $checked, mixed $current = true, bool $echo = true )
विवरण पहले दो तर्कों की तुलना करता है और यदि समान अंक जाँच के रूप में
पैरामीटर्स $ की जाँच की (मिश्रित) (आवश्यक) तुलना करने के लिए मूल्यों में से एक
$ वर्तमान (मिश्रित) (वैकल्पिक) (सच) अन्य मूल्य की तुलना करने के लिए यदि केवल सही डिफ़ॉल्ट मान नहीं: सच
$ प्रतिध्वनि (बूल) (वैकल्पिक) चाहे गूंज हो या बस स्ट्रिंग को लौटाने के लिए डिफ़ॉल्ट मान: सच
# रीटर्न (स्ट्रिंग) html विशेषता या खाली स्ट्रिंग लौटाएं
<?php
if(isset($_POST['nameCheckbox'])){
$_SESSION['fr_nameCheckbox'] = true;
}
?>
<input type="checkbox" name="nameCheckbox"
<?php
if(isset($_SESSION['fr_nameCheckbox'])){
echo 'checked';
unset($_SESSION['fr_nameCheckbox']);
}
?>