如何在PHP中处理Angular Checkbox字段

时间:2014-03-13 13:53:25

标签: javascript php mysql angularjs checkbox

我无法弄清楚如何处理在Angular Forms中选择的复选框值,并将这些选定的值添加到mySql DB中。

例如,假设我在Angular JS表单中有这些复选框:

Value1: <input type="checkbox" ng-model="formData.checkbox.value1"> <br/>
Value2: <input type="checkbox" ng-model="formData.checkbox.value2"> <br/>
Value3: <input type="checkbox" ng-model="formData.checkbox.value3"> <br/>

当使用$http.post将上述formData发送到submit.php时,如下所示:

        $http({
        method  : 'POST',
        url     : 'submit.php',
        data    : $.param($scope.formData),  // pass in data as strings
        headers : { 'Content-Type': 'application/x-www-form-urlencoded' }  // set the headers so angular passing info as form data (not request payload)
    })

如何从php端处理这些检查值?

我的问题是:

1)如何通过php传递复选框值? Angular是否只发送一个选中的复选框值数组:checkbox[0], checkbox[2],等...到php(或)或它是否在像

这样的数组中将所有复选框状态发送为True或False
$checkbox[value1] = true;
$checkbox[value2] = false;
$checkbox[value3] = true;

2)如何处理这些复选框并仅将选定的checbbox添加到sql?我在MySql中创建了一个复选框列(字符串类型),当我尝试将$_POST['checkbox']插入这一栏,我收到了Array to string conversion error。我也尝试使用implode将此数组转换为字符串,但这两种方法都不起作用。我基本上试图在DB中存储已选中复选框的值(使用模型名称),因此在稍后检索时我们可以判断检查了哪个复选框以及哪个不是。那么有人能举例说明如何在php中传递复选框值然后存储到DB中吗?

通常在基于php的站点中,我将复选框value=添加到表单,然后将复选框值列表(转换为字符串)插入到DB,因为php仅发布所选复选框的值。但是我不确定如果Angular用于客户端并且php仅用于服务器端,这是如何完成的。任何帮助都会很棒!

0 个答案:

没有答案