如何将价值存储在数据库中每24小时PHP CRONJOB



am an用cronjob运行脚本每24小时运行脚本,但是当我刷新页面时会遇到问题,我也想运行指定的时间运行脚本。

正在使用以下代码

$dif = time();
if ($dif < time()+1) {
$conn = mysqli_connect("localhost", "root", "", "bitmining");
$test = "Hello";
$las_d = date("y-m-d");
$sql3 = "INSERT INTO php_cron(last_ts, value) VALUES('$las_d','$test')";
    mysqli_query($conn, $sql3);
    echo "Updated!";
}

AM新手PHP可以帮助我解决此问题

每次执行cron时,请在数据库中解决此存储日期。

在插入之前检查一下。

<?php
$conn = mysqli_connect("localhost", "root", "", "bitmining");
$dif = time();
$date = "SELECT date_insert FROM php_cron ORDER BY date ASC LIMIT 1";
//84300 are 24h in seconds.
if ($date+84300 > time()){
    if ($conn){
        $sql3 = "INSERT INTO php_cron(last_ts, value, date_insert) VALUES('$las_d','$test','".time()."')";
        if (mysqli_query($conn, $sql3))
        {
            echo "Updated!";
        }
        else
        {
            echo "There is an error.";
        }
    }
}
else {
echo "Not yet!";
}
?>

我认为这只会复制。让我们尝试!

 <?php
$conn = mysqli_connect("localhost", "root", "", "stacks");
$dif = time();
$sql = "SELECT date_insert FROM php_cron ORDER BY date_insert DESC LIMIT 1";
$old_date = mysqli_query($conn, $sql);
if ($old_date->num_rows > 0) {
    $older_date = $old_date->fetch_assoc()['date_insert'];
    $now_date = date_create(date('Y-m-d H:i:s'));
    $old_timestamp = date_create(date( "Y-m-d H:i:s", strtotime( $older_date ) ));
    $diff=date_diff($old_timestamp,$now_date);
    if ($diff->days >= 1){
        if ($conn){
            $las_d = "Input here your values";
            $test = "Input here your values";
            $now_date_updated = date('Y-m-d H:i:s');
            $sql3 = "INSERT INTO php_cron(last_ts, value, date_insert) VALUES('".$las_d."','".$test."','".$now_date_updated."')";
            if (mysqli_query($conn, $sql3))
            {
                echo "Updated!";
            }
            else
            {
              echo "There is an error.";
            }
        }
    }
    else {
    echo "Not yet!";
    }
}
?>

最新更新