【问题标题】:Cron job execute php filecron作业执行php文件
【发布时间】:2018-03-19 11:55:35
【问题描述】:

我将我的 cronjob 设置为每分钟运行一个 php 文件。 php 文件访问数据库以更新一行中的一个值。这是php代码

<?php 

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "dbname";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
else {
mysql_query("UPDATE tanlename SET status = 2 WHERE created < (NOW() - 
INTERVAL 1 MINUTE)");
}
mysqli_close($conn);
?>

我希望代码在发布时间 1 分钟后将帖子的状态设置为 2。

【问题讨论】:

  • tanlename - 错字?表名?
  • 这只是示例,我在此代码中输入的数据不准确
  • mysql_query 更改为mysqli_query 并且不要忘记将参数1设置为$conn
  • @RendiWahyudiMuliawan 你能解释一下“不要忘记参数 1 设置为 $conn”是什么意思
  • 你必须在这里阅读mysqli_query

标签: php mysql mysqli cron


【解决方案1】:

问题出在else这里:

您需要将mysql_ 更改为mysqli_ - 不仅mysql_ 已弃用,还因为您已经在$conn 中使用了mysqli_

那么你需要在mysqli_query中指定连接。

从以下位置更新您的旧代码:

else {
mysql_query("UPDATE tanlename SET status = 2 WHERE created < (NOW() - 
INTERVAL 1 MINUTE)");
}

到这里:

else {
    mysqli_query($conn, "UPDATE tanlename SET status = 2 WHERE created < (NOW() - INTERVAL 1 MINUTE)");
}

【讨论】:

    最近更新 更多