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 展开
<?
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 展开
2个回答
展开全部
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就是你贴出来的那个数组。
建议你将checkbox的值用json_encode函数已json格式存入数据库,取出后json_decode一下就恢复成数组了。这样你能省掉一些字符串处理操作。
补充两句好了
$local = json_encode($_POST['local']);这样$local就是json格式的字符串了
取出后$userLocals = json_uncode(returnUserLocal( $userSessionEmail ));
$userLocals就是你贴出来的那个数组。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询