当我尝试发送生日邮件时,我的表格中的电子邮件出现问题。
这是打印屏幕,如果您看到右侧的表格,有 2 个用户有生日,但在 div 错误的下面的输入中为空...并说“今天没有生日”:
<?php
$sql = $conn->prepare("SELECT email FROM USERS WHERE f_nac >= CURDATE() AND f_nac < CURDATE() + INTERVAL 1 DAY ORDER BY f_nac ASC");
$sql->execute();
while($row = $sql->fetch(PDO::FETCH_ASSOC)) {
$email = ($row['email'].", ");
}
$largo=strlen($email);
if ($largo>2)
$email=substr($email,0,$largo-2);
} else {
echo '<div class="alert alert-danger">No hay cumpleañeros!</div>';
};
?>
<input type="text" id="email" name="email" value="<?php echo $email; ?>" />
如何显示电子邮件以向他们发送邮件?
这两个用户都有电子邮件,表中的行是“f_nac”,类型为“日期”
最佳答案
CUR_DATE()
是 2014 年,生日是 1975 年和 1978 年。比较时必须忽略年份。
SELECT email
FROM USERS
WHERE MONTH(f_nac) = MONTH(NOW()) AND DAY(f_nac) = DAY(NOW())
在您的 while
循环中,您将覆盖 $email
,而不是附加到它。应该是:
$email = '';
while ($row = $sql->fetch(PDO::FETCH_ASSOC)) {
$email .= ($row['email'].", ");
}
关于php - 发送生日电子邮件不显示电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24072314/