我有一个数据库和一个网站,注册用户可以在其智能手机上下载“信息卡”。 3个月后,他们必须将它们返回数据库。我已经设置了一个每24小时运行一次PHP脚本的cron作业。但没有电子邮件输出。我一直在寻找示例和教程,但到目前为止还没有运气。 你们中有人对可能出现的问题有任何建议吗?
<!DOCTYPE html>
<?php
require_once 'includes/connect_database.php';
DatabaseConnect();
$sql = "SELECT * FROM My_table WHERE downloaded = DATE(NOW() + INTERVAL 3 MONTH)";
if (false === ($result = mysqli_query($connection, $sql)) {
trigger_error('there was a query/sql problem', E_USER_ERROR);
}
if ($result->num_rows > 0) {
// Send email to user with expired info card
while ($row = mysqli_fetch_row($result)) {
// send email to user
mail($row['email'], 'The email Subject', 'The email message body');
sleep(2);
}
mysqli_free_result($result);
}
else {
// nothing to do today
}
答案 0 :(得分:0)
手动运行脚本
检查php错误。
在您的数据库或phpmyadmin中手动运行查询
如果您收到数据,请检查您的php脚本 - 开始调试脚本逻辑
如果您没有看到数据,则无需显示任何内容
编辑:在你告诉我你尝试过后,你得到了mysql的结果,而不是
while ($row = mysqli_fetch_row($result)) {
尝试使用
mysqli_fetch_assoc($result)
或
mysqli_fetch_array($result, MYSQLI_ASSOC);