我有一个表消息,其中字段为:id,用户名,消息,更新日期。我想从这些日期(在我的表格中)到当前日期进行比较。如果差异是30天,则尊重的用户名应显示在管理页面中。 我尝试了日期差异,但它不工作。给定日期和当前日期之间的区别
<?php
include("connection.php");
$queryd=mysql_query("select * from message") or die(mysql_error());
while($resultd=mysql_fetch_array($queryd))
{
extract($resultd);
$date1=date('Y-m-d');
$date2=$lastdate;
$diff=date_diff($date2,$date1);
echo $diff->format("%R%a days");
}
?>
另外我试过这段代码。但没有happend
<?php
include("connection.php");
$queryd=mysql_query("select * from message") or die(mysql_error());
while($resultd=mysql_fetch_array($queryd))
{
extract($resultd);
$date1=date('Y-m-d');
$date2=$lastdate;
$query12=mysql_query("SELECT username,DATEDIFF($date1,$date2) FROM message WHERE DATEDIFF($date1,$date2)<30") or die(mysql_error());
while($result12=mysql_fetch_array($query12))
{
if($result12)
echo $username;
else
echo"record not";
}
}
?
我的第三个解决方案是在这里。我认为它正在工作。但它重复着价值。
<?php
include("connection.php");
$queryd=mysql_query("select * from message") or die(mysql_error());
while($resultd=mysql_fetch_array($queryd))
{
extract($resultd);
$date1=date('Y-m-d');
$date2=$lastdate;
$days = (strtotime($date2) - strtotime($date1))/(60 * 60 * 24);
$result123=mysql_query("select username from message where '$days'<30");
while($query123=mysql_fetch_array($result123))
{
if($query123)
echo $username." ".$days."<br>";
else
echo mysql_error();
}
}
?>
你确定你有一个合适的$ lastdate?尝试var_dump($ lastdate)进行检查 – scaisEdge