Javascript 如果值保存在数据库中,则显示复选框
我目前正在努力显示复选框,如果它保存在数据库中Javascript 如果值保存在数据库中,则显示复选框,javascript,php,checkbox,Javascript,Php,Checkbox,我目前正在努力显示复选框,如果它保存在数据库中 $stmt = $db->prepare('Select * from productsizes a, sizestops b WHERE a.productinformationID = :prodID AND a.sizeID = b.sizestopsID '); $stmt->bindParam(':prodID', $productID, PDO::PARAM_INT); $stmt->execute
$stmt = $db->prepare('Select * from productsizes a, sizestops b WHERE
a.productinformationID = :prodID AND a.sizeID = b.sizestopsID ');
$stmt->bindParam(':prodID', $productID, PDO::PARAM_INT);
$stmt->execute();
$couunterer = $stmt->rowCount();
$y= 1;
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
if($y != $couunterer)
{
echo $sizes5 = $row['sizetopsName']." ";
}
elseif($y == $couunterer)
{
echo $sizes5 = $row['sizetopsName']." ";
}
$y++;
}
这将显示我保存的尺寸,例如XSMALL和LARGE
这是显示其他表中所有复选框的代码
$statement = $db->prepare("SELECT * FROM sizestops order by sizestopsID ASC");
$statement->execute();
while($rows2 = $statement->fetch(PDO::FETCH_ASSOC)) {
echo "
<label style=' display:inline-block;
width:150px;
height:50px;
margin:-1px 4px 0 0;
vertical-align:middle;'>
<input type='checkbox' name='sizes[]' class='checkbox' id='sizesprod' onchange='checksize()' value='" .$rows2['sizestopsID']. "'". $pre_checked.">".$rows2['sizetopsName']."
</label>";
}
现在我只想显示选中的复选框XSMALL和LARGE,其余的不选中。我该怎么做?
希望任何人都能帮助我,谢谢
PHP和Javascript就可以了。感谢不知道您的
表结构
编写查询有点困难,但通常您可以编写查询并连接这两个表,然后检查第二个表中的字段是否为空,这意味着第二个表中有相应的记录,因此您必须选中复选框
,否则,如果为空,则不应选中复选框
查询内容如下:
SELECT sizestops.sizestopsID, sizetopsName.sizestops, productsizes.productinformationID
FROM sizestops
LEFT JOIN productsizes
ON sizestops.sizestopsID = productsizes.sizeID
ORDER BY sizestops.sizestopsID ASC
<?php
while($rows2 = $statement->fetch(PDO::FETCH_ASSOC)) {
$pre_checked = empty($row2['productinformationID']) ? '' : ' checked';
echo "
<label style=' display:inline-block;
width:150px;
height:50px;
margin:-1px 4px 0 0;
vertical-align:middle;'>
<input type='checkbox' name='sizes[]' class='checkbox' id='sizesprod' onchange='checksize()' value='".$rows2['sizestopsID']. "'". $pre_checked.">".$rows2['sizetopsName']."
</label>";
}
?>
现在,在循环中,您可以检查productinformationID
是否为空或不是这样:
SELECT sizestops.sizestopsID, sizetopsName.sizestops, productsizes.productinformationID
FROM sizestops
LEFT JOIN productsizes
ON sizestops.sizestopsID = productsizes.sizeID
ORDER BY sizestops.sizestopsID ASC
<?php
while($rows2 = $statement->fetch(PDO::FETCH_ASSOC)) {
$pre_checked = empty($row2['productinformationID']) ? '' : ' checked';
echo "
<label style=' display:inline-block;
width:150px;
height:50px;
margin:-1px 4px 0 0;
vertical-align:middle;'>
<input type='checkbox' name='sizes[]' class='checkbox' id='sizesprod' onchange='checksize()' value='".$rows2['sizestopsID']. "'". $pre_checked.">".$rows2['sizetopsName']."
</label>";
}
?>
这应该可以为您完成这项工作它只显示保存在数据库中的两种尺寸,即XSMALL和LARGE,其他复选框不显示。另一个也应该出现,不带签入复选框。你曾经准确地查询我发布或更改过它吗?我准确地使用了它,我更改了它,你能分享一下你是如何更改查询的吗?