如果在编辑时勾选复选框,则显示

问题描述:

正如我经历了几种解决方案,我没有得到解决方案。当我去编辑和打开页面时,我想显示复选框的列表,标记为我在插入时选择的列表。 这是我的看法网页..如果在编辑时勾选复选框,则显示

<div class="form-group"> 
     <label class="control-label col-sm-1" for="courses">Courses Completed</label> 
     <div class=" col-sm-5"> 

     <input type="checkbox" name="select_course[]" id="select_course" value="10" <?php if($row->courses =='10') echo "checked" ;?>>10 
     <input type="checkbox" name="select_course[]" id="select_course" value="12" <?php if($row->courses =='12') echo "checked" ;?>>12 
     <input type="checkbox" name="select_course[]" id="select_course" value="degree" <?php if($row->courses=='degree') echo "checked" ;?>>degree 

     </div> 
    </div> 

通过做这样没有复选框被显示为插入检查state.the值就像是一个数组,我的表看起来像这样

id name  address    sex  courses  places     image   password 
1 nesru   v     male "10"  tamilnadu upld-file1469095130.jpg  l 
3 siraj koonathil house  male  "10,12"  tamilnadu upld-file1469167954.jpg  d 
+1

你可以打印$ row-> –

+0

显示'print_r($ row-> courses)的输出;' –

按表已张贴看来你是存储在课程逗号分隔值,您需要在数组转换,并检查使用in_array()功能

<div class="form-group"> 
    <label class="control-label col-sm-1" for="courses">Courses Completed</label> 
    <?php $idArray = explode(",",$row->courses); ?> 
    <div class=" col-sm-5"> 
     <input type="checkbox" name="select_course[]" id="select_course" rel="<?php echo $row->courses; ?>" value="10" <?php if(in_array('10',$idArray)) echo "checked" ;?>>10 
     <input type="checkbox" name="select_course[]" id="select_course" rel="<?php echo $row->courses; ?>" value="12" <?php if(in_array('12',$idArray)) echo "checked" ;?>>12 
     <input type="checkbox" name="select_course[]" id="select_course" rel="<?php echo $row->courses; ?>" value="degree" <?php if(in_array('degree',$idArray)) echo "checked" ;?>>degree 
    </div> 
</div> 
+0

我曾使用json_encode来插入值,所以需要解码它? –

+0

没有按照你的表结构它不需要解码它... –

+0

我已经解码它得到它...感谢很多..改变像这样课程)); ?> –

的属性托运状态进行检查=“”

把你的PHP代码中的引号

<input type="checkbox" name="select_course[]" id="select_course" value="degree" checked="<?php if($row->courses=='degree') echo "checked" ;?>" /> 
+0

我已经给出了这个,但所有的复选框都显示为标记为 –

+0

@MOHAMMED你必须显示' print_r($ row-> courses);'对我们来说每个人都是明智的猜测。在你的代码中输出帽子 –

+0

然后我将不得不同意上面的评论者你需要print_r($ row-> courses)的内容;这听起来像错误是在从数据库中检索数据或从 – Danimal

你应该把下面的代码:

<input type="checkbox" name="select_course[]" id="select_course" value="degree" <?php if($row->courses=='degree'): ?> checked="checked" <?php endif; ?> />