Если я правильно понимаю, ваш запрос sql уже работает в вашей среде, и вы sh создадите задание cron на linux для вызова вашей страницы, которое выполнено в PHP!
Если приведенный выше верный сценарий, то сначала необходимо убедиться, что скрипт sql выполняется в вашем файле cron_script. php следующим образом:
<?php
require 'dbh.inc.php';
// Let's assume that you have an active connection to your database by now
$sql = "UPDATE users_tmp SET stateUser = 'Inactive' WHERE timestamp < NOW() - INTERVAL 5 DAY";
if (mysqli_query($conn, $sql)) {
// createCronLog is an optional function that you can create and use to make a log of what has happened on your cron activity!
createCronLog("Record updated successfully");
} else {
createCronLog("Error updating record: " . mysqli_error($conn));
}
mysqli_close($conn);
?>
Теперь, если вы wi sh для помещения вышеуказанного файла, скажем, в ваш домашний каталог: "/home/yourusername/path/to/cron/cron_script.php"
где-то за пределами public_ html (чтобы его можно было вызывать только из вашего задания cron, а не из www).
Вот ваша команда задания cron:
/usr/local/bin/php /home/yourusername/path/to/cron/cron_script.php
Вот команда задания cron и вызов активности один раз / в / час
0 * * * * /usr/local/bin/php /home/yourusername/path/to/cron/cron_script.php
Если ваш файл имеет зависимости, такие как $ _GET или $ Переменные _POST, вы можете поместить файл cron_script. php где-нибудь в вашей папке public_ html и вызвать свой файл cron, используя полный путь (с доменом), чтобы кроб был вызывать ваш скрипт:
0 * * * * /usr/local/bin/php https://yourdomain.tld/path/to/cron/cron_script.php
Я протестировал вышеупомянутое, и оно работает в linux среде на centos 7. На нем запущен cPanel. Но он также должен работать в любой среде, в которой вы работаете, если ваше задание cron выполняется правильно и вызывает ваш cron_script. * Файл 1035 *.
PS: обратите внимание, что между "/usr/local/bin/php"
И "/home/yourusername/path/to/cron/cron_script.php"
есть пробел