PHP / MySql - DateTime обнаружение, если значения были назначены - PullRequest
3 голосов
/ 31 августа 2010

Я хочу сделать оператор if, который выполняется только в том случае, если значение datetime НЕ равно NULL (0000-00-00 00:00:00)

Я передал значение с помощью запроса в переменную, но как определить, равно ли оно * 1004?*?

$query = "SELECT * FROM stats WHERE member_id='" . $_SESSION['SESS_MEMBER_ID'] . "' "; 
$result = mysql_query($query);

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{
  $money = $row['money'];
  $bank_money = $row['bank_money'];
  $ap = $row['ap'];
  $exp = $row['exp']; 
  $last_ap_update = $row['last_ap_update'];
} 

if ($last_ap_update != ){ //Can i verify its NULL-ness here so i can run this if stament or run else?
}

Ответы [ 5 ]

5 голосов
/ 31 августа 2010

Почему бы не сравнить его напрямую:

if ($last_ap_update != "0000-00-00 00:00:00")
{
      //do whatever.
}
1 голос
/ 31 августа 2010
if ($last_ap_update != "0000-00-00 00:00:00"){
    [process]
}
1 голос
/ 31 августа 2010

Вы сохраняете его в переменную, чтобы использовать его как строку

if ($last_ap_update != "0000-00-00 00:00:00"){
}
0 голосов
/ 31 августа 2010

Почему бы не добавить сравнение в ваш оператор SQL?

$query = "SELECT * FROM stats WHERE member_id='" . $_SESSION['SESS_MEMBER_ID'] . "' AND  last_ap_update > 0";

Да, вы можете использовать > 0, но вы также можете использовать <> '0000-00-00 00:00:00', если вы предпочитаете это.

0 голосов
/ 31 августа 2010

$last_ap_update != strtotime("0000-00-00 00:00:00")

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...