我正在使用MySQL数据库和PHP 我的MySQL数据库包含以下记录:
Name Address Data email Date
Joy Fortblair 10 my@gmail.comm 1/22/2009
Bob Atlanta 15 bob@gmail.com 2/22/2009
我的目的是使用PHP发送电子邮件,条件如下:
数据为1天。 (Current date - date = 1 day
)
它应该一次邮寄所有电子邮件记录。
入门的最佳方式是什么?
答案 0 :(得分:5)
SQL查询非常简单,如下所示
SELECT *, TIMESTAMPDIFF(day, Date, NOW()) FROM `your_table_name` WHERE TIMESTAMPDIFF(day, Date, NOW()) = 1;
现在你必须得到结果的内容并将它们放在一个字符串
中<?php
$sql = " SELECT *, TIMESTAMPDIFF(day, Date, NOW()) FROM `your_table_name` WHERE TIMESTAMPDIFF(day, Date, NOW()) = 1";
$query = mysql_query($query);
$emailBody = "";
while($row = mysql_fetch_assoc($query))
{
$emailBody .= "Name: ".$row['Name']."; Address: ".$row['Address']."; Data: ".$row['Data']."; Email: ".$row['email']." \n";
}
mail("address@yourdomain.com", "Subject", $emailBody);
?>
享受!
答案 1 :(得分:1)
SELECT email FROM Table WHERE DATEDIFF(CURRENT_DATE(), Date) >= 1
至于仅发送一次:存储您在数据库中发送电子邮件的事实,或者每天使用相等比较(=)而不是大于或等于(&gt; =)来调用脚本