如果日期等于那么PHP

时间:2012-04-01 09:28:14

标签: php mysql date datepicker

您好我正在尝试在我拥有的字段上使用datepicker。我正在尝试设置日期字段,因此如果数据库中的日期值设置为deafault(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'];

          }

它没有工作,所以任何帮助或正确方向上的一点都会很棒。 还请注意我没有添加任何正确的样式,所以我只是在功能的帮助之后。

非常感谢。

3 个答案:

答案 0 :(得分:2)

  1. 您不想使用var_dump()。但如果您告诉我们$post['Date']的价值结构,那将会有所帮助。

  2. 您希望使用==而不是=作为第一个if语句。你应该比较而不是分配(a)价值。

  3. 第二个if语句只能更改为else

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

答案 1 :(得分:1)

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'];
  }

答案 2 :(得分:0)

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

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