gpt4 book ai didi

php - 我做错了什么? "cronjob"

转载 作者:太空宇宙 更新时间:2023-11-03 11:24:26 24 4
gpt4 key购买 nike

我有 MySQL 数据库,它包含一个表,其中有一列名为“下载”

我想每 24 小时将此列更新为 0,但我的代码似乎不起作用!

我在服务器上有一个名为 cron 的文件夹。其中有两个文件,一个连接数据库,另一个包含将列下载重置为 0 的 php 代码

这是我的连接代码:

   <?php
$link = mysqli_connect("localhost", "test", "root", "test1");

if (!$link) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}

echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;
?>

我想在 cronjob 中使用它的 php 代码是这个:

<?php
require_once('/home/cron/connect.php'); // connect to db
$mysqli = ("update users set downloads = 0");
$mysqli->close();
?>

我直接从浏览器启动文件,但它没有将列下载重置为零!我做错了什么?

注意:当然有.htaccess文件保护直接访问连接文件

编辑:如果我运行连接代码,连接没有错误,但来自 cronjob 的第二个代码不起作用!

最佳答案

你根本不需要$mysqli->close();。您的连接对象称为 $link。第二行应该是:

$link->query("update users set downloads = 0");

您可能还应该检查它是否正确执行,如果不正确,请采取一些措施。
第二个文件中的完整代码可能如下所示(假设连接成功):

<?php
require_once('/home/cron/connect.php'); // connect to db
if( $link->query("update users set downloads = 0") ){
// succesful
} else {
// fail
}

关于php - 我做错了什么? "cronjob",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55680387/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com