我使用复选框来获取和存储用户的兴趣。
将这些数据存储在数据库mysql中,并以逗号分隔
我的PHP代码用于检索这些数据并在html页面中显示
<?php
....
// Get data
$result = profile($uname);
$result['interest'] = explode(',', $result['interest']);
print_r($result['interest']); // output: Array ( [0] => option1 [1] => option2 [2] => option3 )
?>
....
<div class="col-sm-6">
<div class="form-check checkbox-style">
<label class="label-weight">Interests</label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" onclick="return interest_validate(this);" id="selectall"><span class="check-label-pad"> Select all</span></label></label><label for="" class="opacity-set label-set" id="select-label"></label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" onclick="return option_select(this);" value="option1" <?php echo in_array('option1',$result['interest']) ? 'checked' : ''; ?>><span class="check-label-pad">Option 1</span></label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" onclick="return option_select(this);" value="option2" <?php echo in_array('option2', $result['interest']) ? 'checked' : ''; ?>><span class="check-label-pad">Option 2</span></label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" onclick="return option_select(this);" value="option3" <?php echo in_array('option3', $result['interest']) ? 'checked' : ''; ?>><span class="check-label-pad">Option 3</span></label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" id="other_checkbox" onclick=" return other_validate(this);" value="other"><span class="check-label-pad" >Other</span> </label><input type="text " class="text-style-other opacity-set" id="other-text" onblur="return other_text_validate();" />
<label for="" class="opacity-set label-set" id="other-text-label"></label>
</div>
</div>
问题:在编辑模式下,我使用“in_array()”作为默认情况下按照数据库值选中复选框。但如何检查 “其他”(检查附加图像)选项并显示它的值?哪一个 条件我需要在这里添加?如何在一个领域存储“兴趣” 在数据库中
答案 0 :(得分:0)
您可以使用:
分隔符插入数据。然后显示数据尝试以下代码:
示例:存储的数据是“option2,option3,other:xyz”;
<?php
$result['interest']="option2,option3,other:xyz";
$result['interest']=explode(":", $result['interest']);
$txt_value="";
if(count($result['interest']) >= 2)
$txt_value = $result['interest'][1];
$result['interest']=explode(",",$result['interest'][0]);
?>
<div class="col-sm-6">
<div class="form-check checkbox-style">
<label class="label-weight">Interests</label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" id="selectall"><span class="check-label-pad"> Select all</span></label></label><label for="" class="opacity-set label-set" id="select-label"></label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" value="option1" <?php echo in_array('option1',$result['interest']) ? 'checked' : ''; ?>><span class="check-label-pad">Option 1</span></label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" value="option2" <?php echo in_array('option2', $result['interest']) ? 'checked' : ''; ?>><span class="check-label-pad">Option 2</span></label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" value="option3" <?php echo in_array('option3', $result['interest']) ? 'checked' : ''; ?>><span class="check-label-pad">Option 3</span></label><br>
<label class="form-check-label label-weight">
<input type="checkbox" class="form-check-input" name="interest[]" id="other_checkbox" <?php echo in_array('other', $result['interest']) ? 'checked' : ''; ?>><span class="check-label-pad" >Other</span> </label><input type="text " class="text-style-other opacity-set" value="<?=$txt_value?>" id="other-text"/>
<label for="" class="opacity-set label-set" id="other-text-label"></label>
</div>
</div>