关闭。这个问题需要更加突出重点。它目前不接受答案。
**想改进这个问题吗?**通过编辑这篇文章更新这个问题,使它只关注一个问题。
两年前关门了。
改进这个问题
我试图在我的网站上添加一个新的功能,即我想固定的时间限制为1个月,然后到期,这意味着 the status of that user will change from 0 to 3.
我的表中有很多字段,包括
身份证件
状态
今天是你的约会。
其中,today\u date存储注册的时间和日期,默认状态为0。
使用php-mysql可以吗?如果可能的话,请帮帮我。提前谢谢。
3条答案
按热度按时间jgzswidk1#
cron job是最好的解决方案。以为你不想在气球上贴大提琴带。
如果您想按照以下步骤操作:
创建一个php脚本并保存在一个文件中,例如mycron.php
如果您使用带有centos的linux服务器创建带有bash的调度程序脚本,那么如何在没有交互式编辑器的情况下使用bash自动创建cron作业?
如果有cpanel转到cron作业,请设置要运行的文件路径和时间。
z4bn682m2#
你应该采取另一种方法来实现这一点。
您在db right中已经有注册日期,因此当用户在登录表单中输入有效凭据时,请将当前日期与注册日期进行比较,如果相差超过30天,则更新
status
带的列0
同时也不允许该用户进入。如何在php中计算两个日期之间的天数:
9w11ddsr3#
如果您有一个页面来处理登录post数据,那么构建sql查询以获取包含用户注册时间的列。采取
$time_of_reg
作为用户的注册时间。无论您使用什么时间戳,请使用strtotime()
功能。现在用户的注册时间增加了30天
$time_of_reg_plus_30 = strtotime('+30 Days',$time_of_reg)
现在,如果当前时间大于或等于30天+用户注册时间,则使用if条件执行更新查询。这样您就可以对您的数据库执行更新查询status
列,仅当用户已注册30天或以上时。(在unix时间戳中包含这些值,使比较更容易)
请记住将其放置在处理登录日志数据的页面中,这是一种不用cron作业就可以实现目标的好方法,因为每当用户尝试登录时,用户的状态都会更新。