PHP怎么实现复选框勾为1不勾为0呢

u011543604 2014-09-02 01:19:17
复选框框 如何让它在勾选的情况下为1没有勾选的情况下为0写入数据库不用分隔符分隔类似于101010101010且在编辑的时候1就勾选 0就不勾选(现在是没有勾的写入数据库没有值) 望大家赐教

$sql_tt="SELECT id,title,type,jurisdiction FROM `config` order by id asc "; //取值
$db->query($sql_tt);
$type_cut=$db->fetchAll();
foreach ($type_cut as $key => $val) {
$type_cut[$val[type]][$val[jurisdiction]] = $val[title];
unset($type_cut[$key]);
}

$jurisdiction=$type_cut[jurisdiction];


//权限
function checkbox_role_action($jurisdiction,$row_action){
$action=explode(',',$row_action);
$i=1;
foreach($jurisdiction as $key=>$val){
if($key!="0"){
if(in_array($key,$action)){
$cbox .="<span style=\"float:left;width:150px\"><input name=\"action[]\" type=\"checkbox\" value=\"$key\" checked=\"checked\" />$val</span>\n";
}else{
$cbox .= "<span style=\"float:left;width:150px\"><input name=\"action[]\" type=\"checkbox\" value=\"$key\" />$val</span>\n";
}
}
if($i==8){$cbox .="";}
$i++;
...全文
232 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_17507289 2014-09-03
  • 打赏
  • 举报
回复
IsChecked.Value属性
xuyanlu 2014-09-02
  • 打赏
  • 举报
回复
引用 4 楼 u011543604 的回复:
[quote=引用 3 楼 xuyanlu 的回复:] Js可以验证那些复选框的,

		<script>
			$("#clc").bind('click', function(){
				$("input[type=checkbox]").each(function(){
					isChecked = $(this).attr("checked") == 'checked' ? 1 : 0;
					alert(isChecked);
				});
			});
			
		</script>
选中的输出1,未选的输出0
那么在编辑的时候又让他1勾上0不勾呢[/quote] checked 有个attr 是checked ,写上就是勾选了 <input type="checkbox" name="" checked />
u011543604 2014-09-02
  • 打赏
  • 举报
回复
引用 3 楼 xuyanlu 的回复:
Js可以验证那些复选框的,

		<script>
			$("#clc").bind('click', function(){
				$("input[type=checkbox]").each(function(){
					isChecked = $(this).attr("checked") == 'checked' ? 1 : 0;
					alert(isChecked);
				});
			});
			
		</script>
选中的输出1,未选的输出0
那么在编辑的时候又让他1勾上0不勾呢
xuyanlu 2014-09-02
  • 打赏
  • 举报
回复
Js可以验证那些复选框的,

		<script>
			$("#clc").bind('click', function(){
				$("input[type=checkbox]").each(function(){
					isChecked = $(this).attr("checked") == 'checked' ? 1 : 0;
					alert(isChecked);
				});
			});
			
		</script>
选中的输出1,未选的输出0
u011543604 2014-09-02
  • 打赏
  • 举报
回复
引用 楼主 u011543604 的回复:
复选框框 如何让它在勾选的情况下为1没有勾选的情况下为0写入数据库不用分隔符分隔类似于101010101010且在编辑的时候1就勾选 0就不勾选(现在是没有勾的写入数据库没有值) 望大家赐教

$sql_tt="SELECT id,title,type,jurisdiction FROM `config` order by id asc "; //取值
$db->query($sql_tt);
$type_cut=$db->fetchAll();
foreach ($type_cut as $key => $val) {
        $type_cut[$val[type]][$val[jurisdiction]] = $val[title];
        unset($type_cut[$key]);
}

$jurisdiction=$type_cut[jurisdiction];


//权限
function checkbox_role_action($jurisdiction,$row_action){
	$action=explode(',',$row_action);
	$i=1;
	foreach($jurisdiction as $key=>$val){
		if($key!="0"){
		if(in_array($key,$action)){
		$cbox .="<span style=\"float:left;width:150px\"><input name=\"action[]\" type=\"checkbox\" value=\"$key\" checked=\"checked\" />$val</span>\n";
		}else{
		$cbox .= "<span style=\"float:left;width:150px\"><input name=\"action[]\" type=\"checkbox\" value=\"$key\" />$val</span>\n";
		}
		}
		if($i==8){$cbox .="";}
		$i++;
可否用JS来做一个判断呢 如果可以该怎么做呢?
xuzuning 2014-09-02
  • 打赏
  • 举报
回复
请注意一个事实:未勾选的复选框是不会提交的 所以被提交的复选框的值,应为原始数据的编号 如果原始数据为 0000000000 那么其编号就是 0123456789 于是有 生成
$action = '0101010101';
foreach(str_split($action) as $k=>$v) {
  $ck = $v ? 'checked' : '';
  echo "<input type=checkbox name=action[] value=$k $ck>";
}
读取
$action = '0000000000'';
foreach($_POST['action'] as $k) $action{$k} = '1';

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧