CRONTAB 有问题
Something is wrong with CRONTAB
当我通过在终端中编写以下行来测试代码时,我的代码工作正常
php email.php
我的电子邮件已发送,但在我 运行 它作为 CRONTAB 后,它不起作用。
我的 email.php 文件代码是:
<?php
require("../includes/config2.php");
$list =query("SELECT email, LastName, FirstName, Day, Month FROM birthday WHERE ReminderDay LIKE ? AND ReminderMonth LIKE ?", date("j"),date("n"));
foreach ($list as $lis)
{
mail("{$lis['email']}",'Birthday reminder',"This is a reminder about coming birthday of {$lis['FirstName']} {$lis['LastName']} on {$lis['Day']}th day of {$lis['Month']}th month");
}
mail('laurynasgiriunas@gmail.com','Birthday reminder','6');
?>
当我注释掉 email.php 文件中最后一个 mail(...) 行以外的所有内容时,Crontab 开始工作。
crontab -l 给出:
- /usr/bin/php /home/jharvard/vhosts/pset7/public/email.php
我不明白为什么它在调用 "php email.php" 时起作用,但在通过 Crontab
打开文件后不起作用
如评论中所述,问题是我使用了相对路径而不是绝对路径
当我通过在终端中编写以下行来测试代码时,我的代码工作正常
php email.php
我的电子邮件已发送,但在我 运行 它作为 CRONTAB 后,它不起作用。 我的 email.php 文件代码是:
<?php
require("../includes/config2.php");
$list =query("SELECT email, LastName, FirstName, Day, Month FROM birthday WHERE ReminderDay LIKE ? AND ReminderMonth LIKE ?", date("j"),date("n"));
foreach ($list as $lis)
{
mail("{$lis['email']}",'Birthday reminder',"This is a reminder about coming birthday of {$lis['FirstName']} {$lis['LastName']} on {$lis['Day']}th day of {$lis['Month']}th month");
}
mail('laurynasgiriunas@gmail.com','Birthday reminder','6');
?>
当我注释掉 email.php 文件中最后一个 mail(...) 行以外的所有内容时,Crontab 开始工作。 crontab -l 给出:
- /usr/bin/php /home/jharvard/vhosts/pset7/public/email.php
我不明白为什么它在调用 "php email.php" 时起作用,但在通过 Crontab
打开文件后不起作用如评论中所述,问题是我使用了相对路径而不是绝对路径