MySQL cronjob脚本到MySQLi cronjob脚本

时间:2020-03-02 21:39:14

标签: php mysqli

我一直在运行一个cronjob MySQL脚本,该脚本运行良好,但已弃用,将无法再使用。我在升级到mysqli时花了很多时间,可以在日志中找到“ ok!”的回显结果。但是实际的查询不再运行了。

这使cronjob的讨论成为主要目的,是选择表'h2lb9_users'并将所有行的'block'列更新为0。我这样做是为了帮朋友,因此,非常感谢您的协助。

NEW ATTEMPT:
<?php
$username="HERE";
$password="HERE";
$dbname="HERE";
$dbhost="localhost";
$query="update h2lb9_users set 'block' = 0";
$connection = mysqli_connect($dbhost,$dbname,$username,$password);
mysqli_select_db($connection,"I write out dbname here");
mysqli_query($query);
mysqli_close();
echo strftime('%c')." ok!";
?> 

这是起作用的旧代码:

OLD WAS WORKING:
<?php
$username="HERE";
$password="HERE";
$dbname="HERE";
$dbhost="localhost";
$query="update h2lb9_users set `block` = 0";
mysql_connect($dbhost,$username,$password);
@mysql_select_db($dbname) or die(strftime('%c')." Unable to select database");
mysql_query($query);
mysql_close();
echo strftime('%c')." ok!";
?>

1 个答案:

答案 0 :(得分:0)

您的bew脚本中存在一些错误。

在更新状态3中,您必须再次使用反引号将单引号用于字符串

那么不必选择数据库部分,您已经在连接字符串中完成了

连接字符串必须具有正确的顺序

最后,您发送mysqli命令总是添加连接。

<?php
    $username="HERE";
    $password="HERE";
    $dbname="HERE";
    $dbhost="localhost";
    $query="update h2lb9_users set `block`  = 0";
    $connection = mysqli_connect($dbhost,$username,$password,$dbname);
    mysqli_query($connection,$query);
    mysqli_close($connection);
    echo strftime('%c')." ok!";
?> 
相关问题