【问题标题】:PHP if date equals thenPHP如果日期等于那么
【发布时间】:2012-04-15 08:09:46
【问题描述】:

您好,我正在尝试在我拥有的字段上使用日期选择器。我正在尝试设置日期字段,以便用户只能在数据库中的日期值设置为默认值 (0000-00-00) 时编辑此字段。如果有一个不等于默认值的值,我想显示创建日期。

这是我尝试过的代码:

          if( $post['Date'] = var_dump(checkdate(00, 00, 0000))){ 
          echo "<input type=\"text\" class=\"datepicker\" name=\"pDate\" style=\"border:#000099; margin:10px;\" value=\"";
          echo $post['Date'];
          echo "\"> <input id=\"start_dt\" class=\"datepicker\">";
          }
          if( $post['Date'] != var_dump(checkdate(00, 00, 0000))){ 
          echo "<span>date created: </span>";
          echo $post['Date'];

          }

atm 无法正常工作,因此任何帮助或正确方向的点都会很棒。 还请考虑到我没有添加任何适当的样式,所以我只是在功能方面得到帮助。

非常感谢。

【问题讨论】:

  • var_dump() 并没有像你想象的那样做。
  • 不要以这种方式使用 var_dump()... var_dump() 是开发人员的调试语句,不是向最终用户显示数据的方法,也不是为 if 测试解析值的方法跨度>
  • var_dump 用于调试输出变量,不返回任何内容。因此,使用$post['Date'] = var_dump(...),您将null 分配给$post['Date'],而null 的计算结果为false,因此您的条件永远不会满足。
  • 你指的是$post发布的变量

标签: php mysql date datepicker


【解决方案1】:

无需发明任何东西: $post['Date'] == '0000-00-00'

此外,在大多数情况下,您应该使用NULL 而不是默认值。

【讨论】:

    【解决方案2】:

    var_dump() 用于调试目的,而不是用于条件表达式。接下来,使用= 分配不检查它们的值。您将var_dump() 结果的值分配给$post['Date'] 所以将它们更改为==

    你应该尝试这样的事情

      if( $post['Date'] == checkdate(00, 00, 0000)){ 
          echo "<input type=\"text\" class=\"datepicker\" name=\"pDate\" style=\"border:#000099; margin:10px;\" value=\"".$post['Date']"\">";
          echo "<input id=\"start_dt\" class=\"datepicker\">";
      } else {
          echo "<span>date created: </span>";
          echo $post['Date'];
      }
    

    【讨论】:

      【解决方案3】:
      1. 您不想使用var_dump()。但是,如果您告诉我们$post['Date'] 的值的结构会有所帮助。

      2. 您想在第一个 if 语句中使用 ==,而不是 =。您应该比较,而不是分配 (a) 值。

      3. 第二个if 语句可以更改为else

      4. 只是检查,但您是指$_POST['Date'] 而不是$post['Date']

      【讨论】:

      • 我正在运行查询以从数据库中获取日期,基本上我想要做的是 if ((My database date) equals (the default date)){ Do something...
      猜你喜欢
      • 2017-12-02
      • 2016-10-07
      • 2018-08-05
      • 2023-02-16
      • 1970-01-01
      • 2012-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多