【问题标题】:php checkbox value for sunday not working周日的 php 复选框值不起作用
【发布时间】:2023-02-24 10:50:32
【问题描述】:

我正在尝试使用 php 和 mysql 构建一个每周轮班系统。如果选中一天(使用复选框),则状态为“存在”,如果未选中,则状态为“休息日”。它正在为周一至周六工作。但不是星期天。它正在产生“休息日”;不管复选框是否被选中。这是我的代码

**add.php**
<input type="hidden" name="mon" value="0" >
    <input class="form-check-input" type="checkbox" id="inlineCheckbox1" name="mon" value="1"> 
<input type="hidden" name="tues" value="0" >
    <input class="form-check-input" type="checkbox" id="inlineCheckbox2" name="tues" value="2">
    ......
    ......
<input type="hidden" name="sat" value="0" >
    <input class="form-check-input" type="checkbox" id="inlineCheckbox6" name="sat" value="6">
<input type="hidden" name="sun" value="0" >
    <input class="form-check-input" type="checkbox" id="inlineCheckbox7" name="sun" value="7">
-------------------------------------------------------------------------------------------------


$day=date('w', strtotime($current_date));
         if( ($day==$mon AND $mon!=0) OR ($day==$tues AND $tues!=0) OR ($day==$wed AND $wed!=0) OR ($day==$thurs AND $thurs!=0) OR ($day==$fri AND $fri!=0) OR ($day==$sat AND $sat!=0) OR ($day==$sun AND $sun!=0)){
             $status='Present';}else{$status='Day off';}

【问题讨论】:

  • 如果您要表明的是您的 if 条件正在评估为 false 并因此调用 else 块,那么您的下一步是调试和观察在该条件下使用的值。当你调试(使用单步调试器,或者只是在运行时输出/记录值以观察它们而失败),if 条件中使用的确切运行时值是什么?观察到的结果是什么?预期的结果是什么?为什么?
  • date('w') 周日是什么? 0。那么条件($day==$sun AND $sun!=0) 有多大意义呢?第一部分仅在 $sun 为 0 时适用(因为 $day 就是这样),但 $sun!=0 不能同时为真。
  • 不确定这有多大意义 - 您的表单可以提交多种的选中复选框,但看起来你只是在确定状态值...?

标签: php mysql


【解决方案1】:

感谢大家的帮助。我做了一些调整,现在它可以工作了。我已将复选框值更改为星期一、星期二....星期日。也已将代码更改为

    $mon=$row['mon'];
    $tues=$row['tues'];
    $wed=$row['wed'];
    $thurs=$row['thurs'];
    $fri=$row['fri'];
    $sat=$row['sat'];
    $sun=$row['sun'];
$day=date('l', strtotime($current_date));
        if ($day==$mon || $day==$tues || $day==$wed || $day==$thurs || $day==$fri || $day==$sat || $day==$sun)

{
 $status='Present';
        } else{
            $status='Day Off';}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-09
    • 2014-09-19
    • 1970-01-01
    • 1970-01-01
    • 2014-07-15
    相关资源
    最近更新 更多