-1

日(10)、月(4)、年(1993)を別々に保存しました。現在の日付と比較するにはどうすればよいですか?日付が一致する場合は、cronを使用してmyemail@gmail.comにメールを送信してください。

コードは次のとおりです。

<?php
include"connect_mysql.php";
$reminder_dates = mysql_query("SELECT*FROM registration_form");
while($row = mysql_fetch_array($reminder_dates)){
$main_dob_day = $row['main_dob_day'];
$main_dob_month = $row['main_dob_month'];   
$main_dob_year = $row['main_dob_year'];
}
?> 
4

3 に答える 3

1
$main_date   = "{$main_dob_year}-{$main_dob_month}-{$main_dob_day}";
$todays_date = date("Y-m-d");
$today       = strtotime($todays_date);
$main_dt     = strtotime($main_date);

if($main_dt == $today)
{
  $valid = "send email";
  echo $valid;
}

それが動作します

于 2012-07-09T11:57:57.577 に答える
0

SQLクエリで直接比較を行うと、ループはクエリから返されたすべての行に電子メールを送信します。

<?php
    include"connect_mysql.php";
    $sql = "
        SELECT *
        FROM registration_form
        WHERE 
            main_dob_month = MONTH(CURDATE()) AND 
            main_dob_day = DAYOFMONTH(CURDATE())";

    $reminder_dates = mysql_query($sql);
    while($row = mysql_fetch_array($reminder_dates))
    {
        // send email(s)
    }
?> 
于 2012-07-09T09:50:17.533 に答える
0

おそらく次のようなものです:

$old_date = "2006-01-16"; // Create this from the 3 strings you have in the db
$old_date = strtotime($old_date); 

$todays_date = date("Y-m-d"); 
$todays_date = strtotime($todays_date); 


if ($old_date == $todays_date)
 print "equal";
else
 ....

編集:コメントに応じて、次のように日付関数を使用して現在の日付と月を取得できます。

$m = date("m");
$d = date("d");
于 2012-07-09T09:42:29.850 に答える