我的最后一个问题不是很好,所以很抱歉“打开”新的问题。
重要数据:
表格1
编号:1
id:2
id:3
表2
编号:1
id:3
Query1(id结果):
1,2,3
Query2(id结果):
1,3
因此,如果每次我获取这2个表(带有正确的c查询)并且table1上存在来自table2的一些ID,则我有一个复选框需要更改为“选中”。
我这样做是这样的:
<?php
while($row = mysql_fetch_array($Query1))
{
while($row2 = mysql_fetch_array($Query2))
{
$checkit = '';
if($row['id'] == $row2['id'] )
$checkit = 'checked="checked"';
}
?>
<input type="checkbox" name = "checkbox-1" class="checkbox" value ="" <?php echo $checkit ?> />
<?php
}
}
?>
问题:当1 = 1时,我只能对第一个结果进行“检查”。
那只取一次。我需要结果应该像这样(id):11-13 | 21-23 | 31-33和选中的复选框仅在11和33时出现
希望您能理解。
最佳答案
你有用
$checkit = 'checked="yes"';
应该
$checkit = 'checked="checked"';
尝试这个: -
<?php
$arr_one = '';
while($row = mysql_fetch_array($Query1))
{
$arr_one[]= $row['id'];
}
while($row2 = mysql_fetch_array($Query2))
{
$checkit = '';
$id = $row2['id'];
if (in_array($id,$arr_one))
{
$checkit = 'checked="checked"';
}
?>
<input type="checkbox" name= "checkbox-1" class="checkbox" value ="" <?php echo $checkit ?> />
<?php
}
?>
关于php - 更改复选框以使用mysql和php进行检查,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11781988/