如果数据库中存在值,则检查chechbox

时间:2017-10-08 17:30:37

标签: php html mysql

我尝试根据已经使用implode插入的数据库中的值get选择复选框,以便将值插入带有分隔符的数据库中,但是当我显示带有选定值的表单时,它不会选择任何内容

//getting from DB
 $moteur=$row['moteur'];
$moteur= explode(",",$moteur);

try to select 

<th> <input type="checkbox" name="moteur[]" value="Vidange" 
<?php
$count=count($moteur);
for( $i=0;$i<$count;$i++)
 echo ($moteur[$i]=='Vidange' ? 'checked' : 'disabled'); ?> >

         </th>
<th> <input type="checkbox" name="moteur[]" value="nv" 
<?php
for( $i=0;$i<$count;$i++)
 echo ($moteur[$i]=='nv' ? 'checked' : 'disabled'); ?> >

             </th>
<th> <input type="checkbox" name="moteur[]" value="remplace" 
<?php
for( $i=0;$i<$count;$i++)
 echo ($moteur[$i]=='remplace' ? 'checked' : 'disabled'); ?> >
         </th>
<th> <input type="checkbox" name="moteur[]" value="nettoye" 
<?php
for( $i=0;$i<$count;$i++)
 echo ($moteur[$i]=='nettoye' ? 'checked' : 'disabled'); ?> >



         </th>
<th> <input type="checkbox" name="moteur[]" value="effectue"

<?php
for( $i=0;$i<$count;$i++)

echo ($moteur[$i]=='effectue' ? 'checked' : 'disabled'); ?> >        </th>
<th> <input type="checkbox" name="moteur[]" value="controle" 
<?php
for( $i=0;$i<$count;$i++)
 echo ($moteur[$i]=='controle' ? 'checked' : 'disabled'); ?> >      
         </th>

2 个答案:

答案 0 :(得分:0)

复选框值存储为1或0(除非您手动更改了此值)。您正在与自己设定的价值进行比较。这不行。

如果您在保存之前操作表单数据,我无法从这个片段中分辨出来,因为您从未提及它我会假设没有。

将输入名称与值1或0进行比较以切换&#39;已选中&#39;状态。

答案 1 :(得分:0)

从您的问题中我理解的是,尝试这个简单的代码段

str