我目前在一家公司实习,作为我职责的一部分,我的老板要求我开发一个 PHP 脚本来查询我们公司的 MySQL 数据库,特别是“请求”表,并根据检索到的信息发送自动提醒电子邮件。这是我的第一份工作,我不熟悉 cron 作业和 PHP 中自动发送电子邮件的过程。
以下是我的问题的详细信息:
使命: 构建一个 PHP 脚本来检查“请求”表并找出哪些需要注意。
斗争: 不知道如何使用 cron 作业使该脚本自行运行。 我对用于发送这些提醒电子邮件的 PHP 函数或库一无所知。
尝试的解决方案: 做了一些在线研究并偶然发现了 cron 作业,但实施它们是一个完全不同的故事。 尝试寻找电子邮件的 PHP 函数,但迷失在信息的海洋中。
我感谢任何可以帮助我解决此脚本的指导、教程或示例。
谢谢!
您需要的是一个 php 脚本,该脚本从 mysql 数据库中选择一些数据,并向请求中可用的每个电子邮件发送提醒电子邮件。
<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_dbname";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM requests WHERE request_time <= ".(time() - 3*86400);
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// process each row
while($row = $result->fetch_assoc()) {
$to = row["email"]; // Replace with actual recipient email address
$subject = "Reminder: Action Required";
$message = "This is a reminder for a request made on " . $row['request_date'] . ". Please take the necessary action.";
$headers = "From: [email protected]";
mail($to, $subject, $message, $headers);
}
} else {
echo "0 results";
}
$conn->close();
?>
上面的示例选择 request_time 早于 3 天(3*86400 秒)的行,并向表中可用的电子邮件地址发送电子邮件。显然,您必须根据您的需要和数据库修改此代码。这只是一个例子。