簡體   English   中英

如何獲得從今天到本月底的生日?

[英]How to get birthday date from today to this month end?

我想讓客戶生日從今天到本月底。

這是我的桌子

id   dob           stid
1    1960-05-12    1389
2    1958-05-11    1389
3    1970-05-14    1389
4    1959-05-18    1389

function getBirthdayDate($date)
{
$dateqry='';    
if($date=='today')
{
$dateqry=" AND MONTH( `dob`) = '".date("m")."' AND DAY(`dob`)='".date("d")."'";
}
else if($date=='tomorrow')
{
$dateqry=" AND MONTH( `dob`) = '".date("m")."' AND DAY(`dob`)='".date("d", strtotime("+1 day"))."'";
}
else if($date=='month')
{
$dateqry=" AND MONTH( `dob`) = '".date("m")."' AND DAY(`dob`)='".date("d")."' BETWEEN DAY(`dob`)='".date("t")."' ";
}   
$sql="SELECT * FROM `customers` WHERE store_id='1389' $dateqry ";
$result=dbQuery($sql);
return $row=$result->num_rows;
}

從今天到最后一天的月底,我該怎么辦?

注意:這里不應該使用年份,而只能是月份和日期。 例如,今天和本月結束之間的這個月和一天。

謝謝

您可以直接使用YYYY-MM-DD格式的日期,MySQL很好理解,因此

今天到本月底

$last_date = date('Y-m-t');
$today = date("Y-m-d");

$dateqry = " AND `dob` >= '$today' AND `dob` <= '$last_date'";

我假設您有一些HTML表單,您可以選擇在其中顯示“今天”,“明天”或“本月”的生日嗎?

您對“今天”和“明天”的條件是正確的。

對於“月”,將您的條件更改為:

  else if($date=='month') { $dateqry=" AND MONTH( `dob`) = '".date("m")."' AND DAY(`dob`) BETWEEN '".date("d")."' AND '".date("t")."' "; } 

即,將BETWEEN子句用於今天的日期和月末日期

function getBirthdayDate()
{
$dateqry='';    
$today=date("Y-m-d");
$lastdate=date("Y-m-t", strtotime($today));

$dateqry=" AND `dob`>= '".$today."' AND `dob`<='".$lastdate."'";

$sql="SELECT * FROM `customers` WHERE store_id='1389' ".$dateqry." ";
$result=dbQuery($sql);
return $row=$result->num_rows;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM