【发布时间】:2014-05-19 03:35:54
【问题描述】:
给定 varchar mysql 字段 1,3,6 中的数据
我有 7 个用于 SUN MON TUE WED WED THU FRI SAT 的复选框 我已经存储了需要检查的日期,但我想显示所有未选中和选中的框
所以对于我的示例输出将是 SUN(checked) MON TUE(checked) WED THU FRI(checked) SAT 这 7 个词代表复选框。假设数据是 varchar mysql 字段 1,3,6
我的代码部分工作,因为它只会显示需要检查的第一天,而不是其他天。它确实显示了未选中的复选框,这很好。
这是我的代码: 顺便说一句,如果格式很奇怪,对不起!我是新来的。
<? php
$RecurringDays = explode(",", $recur['weekday']);
for ($i = 1; $i <= count($RecurringDays) - 1; $i++) {
if ($RecurringDays[$i - 1] == "1") {
echo "<td><input type='checkbox' name='0' id='0' checked='checked' />";
echo "<label for='0'>Sun </label></td>";
continue;
} else {
echo "<td><input type='checkbox' name='0' id='0' />";
echo "<label for='0'>Sun </label></td>";
}
if ($RecurringDays[$i - 1] == "2") {
echo "<td><input type='checkbox' name='1' id='1' checked='checked' />";
echo "<label for='0'>Mon </label></td>";
continue;
} else {
echo "<td><input type='checkbox' name='1' id='1' />";
echo "<label for='0'>Mon </label></td>";
}
if ($RecurringDays[$i - 1] == "3") {
echo "<td><input type='checkbox' name='2' id='2' checked='checked' />";
echo "<label for='0'>Tue </label></td>";
continue;
} else {
echo "<td><input type='checkbox' name='2' id='2' />";
echo "<label for='0'>Tue </label></td>";
}
if ($RecurringDays[$i - 1] == "4") {
echo "<td><input type='checkbox' name='3' id='3' checked='checked' />";
echo "<label for='0'>Wed </label></td>";
continue;
} else {
echo "<td><input type='checkbox' name='3' id='3' />";
echo "<label for='0'>Wed </label></td>";
}
【问题讨论】:
-
如果选中框和未选中框的区别只是“选中”属性,最好删除所有“ifs”并执行以下操作: >.
-
和... 为什么不使用数组并循环遍历它,而不是对每个值进行硬编码? $ar = array('0' => 'Sun', '1' => 'Mon' ...) 然后 foreach ($ar as $id => $day) ...
-
好的,我有一个数组,我循环遍历它我已经完成了 > 但是每次没有更好的方法时我都必须通过数组?
标签: javascript php html date