2017-01-08 9 views
-1

PHPでif文を作成しようとしています。月と日が自分のデータベースにあるものと一致すれば、幸せな記念日メッセージ。それ以外の場合は、ユーザーがウェルカムメッセージを受信すると一致しません。月と日が一致するかどうかを調べるphp if文mysql dbの日付フィールド

if(month($row['date'])==month(now()) && day($row['date'])==day(now())){ 
     echo "Happy Anniversary"; 
    }else{ 
     echo "Welcome"; 
    } 

今のところ私は、次のエラーメッセージが表示されます。致命的なエラーは:未定義の関数MONTHに呼び出し()。

何か助けてください!

答えて

2

あなたはmysql構文とPHP構文を混在させています。

month() and now() are mysql functions

phpがエラーメッセージを表示している理由は次のとおりです。致命的なエラー:未定義の関数MONTH()を呼び出します。

あなたはので、この

$time=strtotime($row['date']); 
if(date("m",$time)==date("m") && date("d",$time)==date("d")){ 
    echo "Happy Anniversary"; 
}else{ 
    echo "Welcome"; 
} 
+0

私のためにそれを説明するためにありがとうございました。私は変更を適用することができました、そして、それは今働きます!再度、感謝します!! – adenis82

0

キャプチャしている日付の形式がわからないので、使用することを前提にしています。 [$ row [date] = "2010-08-12"]

$d = date_parse_from_format("Y-m-d", $row[date]); 
if($d["month"]==date("M") && $d("day")==date("d"){ 
    echo "Happy Anniversary"; 
}else{ 
    echo "Welcome"; 
} 

乾杯!

0

ようphpにはmonthday機能、彼らはこの使用DateTimemysql functions.Tryあるがありませんかdate()機能 PHPにできること。

<?php 
$row['date']='2017-01-08'; 
     $now = new DateTime('now'); 
    $month = $now->format('m'); 
    $date = $now->format('d'); 
    $r=new DateTime($row['date']); 
$rmonth=$r->format('m'); 
$rdate=$r->format('d'); 

if($rmonth==$month && $rdate==$date){ 
     echo "Happy Anniversary"; 
    }else{ 
     echo "Welcome"; 
    } 

DEMO

関連する問題