-1

我有 3 个复选框:

<input name="perm[0]" type="checkbox" value="1" />
<input name="perm[1]" type="checkbox" value="1" />
<input name="perm[2]" type="checkbox" value="1" />

我使用 for 循环遍历数组,如下所示:

for($i=0; $i < 3; $i++)
{
    $perm[$i] = isset($_POST[$perm][$i]) ? 1 : 0;
}

之前我成功创建了 3 列ureaduwrite并且usearch. 我想将数据从 perm[0] 插入 uread,perm[1] 插入 uwrite 等等,我不知道如何使用单个 INSERT 语句来做到这一点。

提前致谢。

4

2 回答 2

1
 $uread = 0;$uwrite = 0; $usearch = 0; 

 if(isset($_POST[perm[0]])==1)
    $uread = 1;
 if(isset($_POST[perm[1]])==1)
    $uwrite = 1;
 if(isset($_POST[perm[2]])==1)
    $usearch = 1;


Insert into `your-tbl-name`(uname,uwrite,usearch) values ($uread,$write,$usearch);
于 2013-06-21T07:03:53.457 回答
0

根据您提供的简要信息,我希望这可以满足您的要求

     $uread = 0;$uwrite = 0; $usearch = 0; // User have not checked any thing and 0=unchecked,1=checked

     if(isset($_POST[perm[0]]))
        $uread = 1;
     if(isset($_POST[perm[1]]))
        $uwrite = 1;
     if(isset($_POST[perm[2]]))
        $usearch = 1;

//NOW insert statement    
Insert into `your-tbl-name`(uname,uwrite,usearch) values ($uread,$write,$usearch);

insert statement根据您的要求进行修改。

于 2013-06-21T05:12:39.003 回答