我能知道是否可能吗?
不使用按钮更新MySQL数据库,我的意思是脚本。
脚本:
我想有一个运行脚本,将搜索一个值,将满足我想要的条件,然后它将自动更新的值。
例子:
我有一个名为-dateStarted
,dateExpiration
和status
的列,所以如果dateExpiration
是今天,它将把status
的值从ACTIVE
更改为INACTIVE
。
附言:dateStarted
+30天
到目前为止,这是我理想的代码,但不知道如何调用数据并在不使用按钮的情况下更新它,就像它一定在后台运行一样。
$dateExpired = date('Y-m-d', strtotime($dateStart. ' + 30 days'));
$dateExpired2 = date('Y-m-d', strtotime($dateStart. ' + 90days'));
$status = "FRESH";
if(strtotime($dateStart)<strtotime('-30 days')){
$status = "INACTIVE";
}
if(strtotime($dateStart)<strtotime('-90 days')){
$status = "DORMANT";
}
谢谢您。
最佳答案
为了根据事件自动更新数据库,可以使用MySQL触发器。
手册示例:
mysql> delimiter //
mysql> CREATE TRIGGER upd_check BEFORE UPDATE ON account
-> FOR EACH ROW
-> BEGIN
-> IF NEW.amount < 0 THEN
-> SET NEW.amount = 0;
-> ELSEIF NEW.amount > 100 THEN
-> SET NEW.amount = 100;
-> END IF;
-> END;//
mysql> delimiter ;
参考:
https://dev.mysql.com/doc/refman/5.5/en/trigger-syntax.html
触发器首先需要在SQL控制面板中创建。
如果希望运行cron作业(这可能是您的一个选项),请参考以下内容:
How to create cron job using PHP?
http://code.tutsplus.com/tutorials/managing-cron-jobs-with-php--net-19428
关于php - 不使用按钮更新数据库? PHP MySQL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33511567/