php checkbox 的读取问题

现在把所有已经checked的项通过数组传递到服务器,代码:<?if(isset($_POST['updateUserInfo'])){$localCos=$_POST[... 现在把所有已经checked的项通过数组传递到服务器,代码:

<?
if(isset($_POST['updateUserInfo'])){
$localCos = $_POST['local'];
$local = "";
foreach( $localCos as $value ){
$local = $local . $value . "|";
}
updateUserInfo( $local );
?>

html代码是:
<label class="checkbox inline">
<input type="checkbox" name="local[]" value="大明湖" > 大明湖
</label>
<label class="checkbox inline">
<input type="checkbox" name="local[]" value="泉城广场" > 泉城广场
</label>
<label class="checkbox inline">
<input type="checkbox" name="local[]" value="燕山地区" > 燕山地区
</label>
<label class="checkbox inline">
<input type="checkbox" name="local[]" value="解放路" > 解放路
</label>
……
存入数据库是:

“大明湖|泉城广场|解放路|千佛山公园”……

求问:
如何在页面打开的时候做判断,判断这个checkbox是否应该是checked(下面下划线的地方),求方法

<input type="checkbox" name="local[]" value="火车站堤口路" <?php if(_______) echo("checked");?>> 火车站/堤口路
补充,代码:
$userLocals = explode('|' , returnUserLocal( $userSessionEmail ));

print_r($userLocals);

输出结果是:

Array
(
[0] => 高新区
[1] => 济大会展中心
[2] => 青龙小区
[3] => 大观园
[4] => 体育中心
[5] => 西市场
[6] => 火车站堤口路 )

可否判断数组中的任何一个,等于某值的时候,echo checked
展开
 我来答
百度网友a19d193
2013-07-16 · TA获得超过3446个赞
知道大有可为答主
回答量:1464
采纳率:100%
帮助的人:1441万
展开全部
if(in_array('高新区', $userLocals)) echo ' checked="checked"';

建议你将checkbox的值用json_encode函数已json格式存入数据库,取出后json_decode一下就恢复成数组了。这样你能省掉一些字符串处理操作。

补充两句好了
$local = json_encode($_POST['local']);这样$local就是json格式的字符串了
取出后$userLocals = json_uncode(returnUserLocal( $userSessionEmail ));

$userLocals就是你贴出来的那个数组。
风痕千里
2013-07-16 · TA获得超过113个赞
知道小有建树答主
回答量:160
采纳率:0%
帮助的人:95.6万
展开全部
不写代码了,给你一个思路,先把数据库里的数据取出来,弄成一个数组,这样就知道数据库里已经有的数据,然后把<input type="checkbox" name="local[]" value="大明湖" > 大明湖这个大明湖用in_array()函数判断是不是在数据库取出的数组内,在的话就checked。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式