我的表中有一个名为Status的列,此列的可能值为1或0,1表示该行已激活,0表示该行已禁用。
但在我的后台内部,我有一个html表来编辑这个表中的所有值。
要编辑值,管理员只需选择一些行(我使用复选框),然后单击按钮进行编辑。
这个按钮将显示一个新的html表,在这个html表中,我将我在数据库表中的所有值插入到文本框中进行更改和编辑。
问题是我需要显示当前的Status列值,例如:
状态已激活,状态值为1。
该值将如下所示:
要改变这一点,我使用了str_replace
if ($val['status'] == '1'){
$val['status'] = str_replace("1","Active","1");
}else{
$val['status'] = str_replace("0","Disable","0");
}
但是当我提交str_replace更改值,并发送到我的数据库Active而不是1,或者禁用而不是0。
我正在使用选择框来选择状态是否必须处于活动状态或已禁用
<select name='u_status[".$val['id']."]' class='txtedit'>
<option value=".$val['status']." style='display:none;'>".$val['status']."</option>
<option value='1'>Active</option>
<option value='0'>Disabled</option>
</select>
谢谢。
答案 0 :(得分:0)
不要使用str_replace。这只是一个布尔值。
$val['status'] = ($val['status'] == '1' ? 'Active' : 'Disabled');
甚至:
if ($val['status'] == '1') {
$val['status'] = 'Active';
} else {
$val['status'] = 'Disabled';
}
答案 1 :(得分:0)
创建一个包含状态的数组:
$status = array(
'Disabled',
'Enabled'
);
然后使用$val['status']
作为键从该数组中获取所需的值:
<option value=".$val['status']." style='display:none;'>".$status[$val['status']]."</option>