如何查看php中的所有复选框是否为空

时间:2013-08-18 09:57:22

标签: php wordpress

在PHP中,如何查看所有复选框是否为空?这是我的代码的摘录: 基本上,我想使用“if”和“else”代码,专门用于取消选中所有复选框时。

$titlebox=isset($_GET['title']) ? "checked='checked'" : '';
$authorbox=isset($_GET['author']) ? "checked='checked'" : '';

// keeps checkboxes checked after submit

<form action="" method="get">
<input type="text" name="search">
<input type="submit" value="Search">
<input type="checkbox" name="title" '.$titlebox.' >
    <label for="title">Title</label>
<input type="checkbox" name="author" '.$authorbox.' >
    <label for="author">Author</label>
</form>

// form

if (isset($_GET['title']))
    { $searchbooktitle = $bookfieldtitle; 
    }
    else
    { $searchbooktitle = NULL;
    };

// this is how I get individual checkboxes.

最后一部分展示了我如何获得单独的复选框,但如何获取所有复选框并查看它们是否为空?我想使用特定的“if”和“else”代码,只有在未选中所有复选框时才会严格应用。

答案可能很简单,但我是新手并且很困惑。请帮忙!

3 个答案:

答案 0 :(得分:4)

您可以使用以下语法将复选框作为数组发布:

<input type="checkbox" name="data[]" value="title"/>
<input type="checkbox" name="data[]" value="author"/>

在你的PHP中:

if (count($_GET['data']) == 0) {
    // nothing set
} else {
    // something is set
    if (in_array('author', $_GET['data']) {
        //author is selected
    } 
    // (...)
}

答案 1 :(得分:0)

我最终使用下面的代码,该代码完全正常,无需重写我的表单和任何其他代码。

if ((!isset($_GET['title'])) && (!isset($_GET['author'])) && (!isset($_GET['series'])) && (!isset($_GET['year'])) && (!isset($_GET['isbn'])) && (!isset($_GET['tags'])) && (!isset($_GET['description'])))
    { $searchbookdefault = $bookfieldtitle; 
    }
    else
    { $searchbookdefault = NULL;
    };

答案 2 :(得分:0)

这可能会对您有所帮助:

<form name="search_field" id="search_field" action="formpage.php" method="post" >
    <ul>
    <li><input type="checkbox" name="day[]" value="mon"/>Monday</li>
     <li><input type="checkbox"  name="day[]" value="tue"/>Tueday</li>
                <li><input type="checkbox" name="day[]" value="wed"/>Wednesday</li>
                <li><input type="checkbox" name="day[]" value="thr"/>Thursday</li>
                <li><input type="checkbox" name="day[]" value="fri"/>Friday</li>
                <li><input type="checkbox" name="day[]" value="sat"/>Saturday</li>
                <li><input type="checkbox" name="day[]" value="sun"/>Sunday</li>
    </ul>
    <input type="submit" id="submit" name="submit"  />
    </form>

您可以从中获得工作结果(为了更好地理解):

<form name="search_field" id="search_field" action="formpage.php" method="post" >
 <?php if(!$_POST == ''){ ?>
<ul>
<li><input type="checkbox" <?php if(in_array("mon", $_POST['day'])) {?> checked="checked"<?php } ?> name="day[]" value="mon"/>Monday</li>
 <li><input type="checkbox" <?php if(in_array("tue", $_POST['day'])) {?> checked="checked"<?php } ?> name="day[]" value="tue"/>Tueday</li>
            <li><input type="checkbox" <?php if(in_array("wed", $_POST['day'])) {?> checked="checked"<?php } ?> name="day[]" value="wed"/>Wednesday</li>
            <li><input type="checkbox" <?php if(in_array("thr", $_POST['day'])) {?> checked="checked"<?php } ?> name="day[]" value="thr"/>Thursday</li>
            <li><input type="checkbox" <?php if(in_array("fri", $_POST['day'])) {?> checked="checked"<?php } ?> name="day[]" value="fri"/>Friday</li>
            <li><input type="checkbox" <?php if(in_array("sat", $_POST['day'])) {?> checked="checked"<?php } ?> name="day[]" value="sat"/>Saturday</li>
            <li><input type="checkbox" <?php if(in_array("sun", $_POST['day'])) {?> checked="checked"<?php } ?> name="day[]" value="sun"/>Sunday</li>
</ul>
<input type="submit" id="submit" name="submit"  />
</form>
<?php
print_r($_POST);
?>
<?php } else { ?>


 <form name="search_field" id="search_field" action="formpage.php" method="post" >
<ul>
<li><input type="checkbox" name="day[]" value="mon"/>Monday</li>
 <li><input type="checkbox"  name="day[]" value="tue"/>Tueday</li>
            <li><input type="checkbox" name="day[]" value="wed"/>Wednesday</li>
            <li><input type="checkbox" name="day[]" value="thr"/>Thursday</li>
            <li><input type="checkbox" name="day[]" value="fri"/>Friday</li>
            <li><input type="checkbox" name="day[]" value="sat"/>Saturday</li>
            <li><input type="checkbox" name="day[]" value="sun"/>Sunday</li>
</ul>
<input type="submit" id="submit" name="submit"  />
</form>



<?php } ?>

只需创建formpage.php文件,粘贴上面的代码并检查结果。