使用crontab执行PHP文件

时间:2016-01-03 09:30:27

标签: php mysql cron crontab

您好我想用crontab执行一个php文件。这个PHP文件更新了MySQL数据库,当我在浏览器中输入URL时,我可以执行该文件而不是cronjob。

我添加

*/5 * * * * php -f /var/www/html/.../update.php >/dev/null 2>&1

到crontab,其他cronjobs运行良好(第三部分扩展)。

我是否需要在PHP文件中添加一些代码?谢谢。

这里有PHP文件中的内容

<?php
$servername = "";
$username = "";
$password = "";
$dbname = "";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "UPDATE pm_videos SET `description` = REPLACE(  `description`  ,'Instagram:',  '')";
if ($conn->query($sql) === TRUE) {
    echo "Record updated successfully with Facebook, ";
} else {
    echo "Error updating record: " .  $conn->error;
}

$sql = "UPDATE pm_videos SET `description` = REPLACE(  `description`  ,'Facebook:',  '')";
if ($conn->query($sql) === TRUE) {
    echo "Record updated successfully with Facebook, ";
} else {
    echo "Error updating record: " .  $conn->error;
}

$conn->close();

1 个答案:

答案 0 :(得分:0)

通常,这是由this.transitionToRoute('my-route/' + pid问题引起的。尝试通过$PATH

将其添加为crontab的第一行
crontab -u root -e

如果这不能解决问题,您需要在代码中查找可能调用外部命令的位置,或者根据环境变量的值。如果这不起作用,请修改您的帖子并显示PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

的内容