php 如何获取复选框checkbox的值

时间:2016-06-13
php表单提交我们经常会使用到复选框checkbox,那么在表单提交中,我们怎么获取表单元素复选框checkbox的值呢?本文章通过实例向大家介绍php 如何获取复选框checkbox的值。需要的朋友可以参考一下。

php checkbox如何实现多选

首先我们先来了解一下checkbox如何实现多选,要实现checkbox多选,只需要将每个checkbox的name属性设置为相同的值,注意,这个值必须带上“[]”,如:food[], 请看下面实例:

<form action="" method="GET">
        <fieldset>
            <label>
                Italian
                <input type="checkbox" name="food[]" value="Italian" />
            </label>
            <label>
                Mexican
                <input type="checkbox" name="food[]" value="Mexican" />
            </label>
            <label>
                Chinese
                <input type="checkbox" name="food[]" value="Chinese" checked="checked" />
            </label>
        </fieldset>
        <input type="submit" value="Go!" />
</form> 

上面实例中有三个checkbox,这三个checkbox都有相同的name属性food[],相当于这三个checkbox是一组多选框,即可以实现多选功能。那么当我们选择了这三个多选框之后,php后台如何获取这三个checkbox的值呢?请继续看下面解答。

php 如何获取checkbox多选框的值

php获取checkbox多选框的值与其他表单元素一样,也是使用$_POST或$_GET, 不同的是,获取checkbox多选框的值是一个数组,数组里面存储有选中的值,如果我们要获取每个选中的值,需要变量这个数组。请看下面实例:

<html>
<head>
    <title>Using Default Checkbox Values</title>
</head>
<body>
<?php
$food = $_GET["food"];
if (!empty($food)){
    echo "The foods selected are: <strong>";
    foreach($food as $foodstuff){
        echo '<br />'.htmlentities($foodstuff);
    }
    echo "</strong>.";
}
else {
    echo ('
    <form action="'. htmlentities($_SERVER["PHP_SELF"]).'" method="GET">
        <fieldset>
            <label>
                Italian
                <input type="checkbox" name="food[]" value="Italian" />
            </label>
            <label>
                Mexican
                <input type="checkbox" name="food[]" value="Mexican" />
            </label>
            <label>
                Chinese
                <input type="checkbox" name="food[]" value="Chinese" checked="checked" />
            </label>
        </fieldset>
        <input type="submit" value="Go!" />
    </form> ');
    }
?>
</body>
</html>

本实例表单是提交给本页的,这里我们使用到了$_SERVER["PHP_SELF"], method="GET"表示以GET方式提交表表单,那么在php服务器端,我们就必须使用$_GET来获取表单元素的值。 $food = $_GET["food"]这句代码正是获取checkbox的值的,但这个值是数组,所以我们要使用foreach来变量这个数组,然后将checkbox选择的每个值获取到变量中。