Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
每周执行一次php代码,但每天执行一次_Php_Mysql_Random - Fatal编程技术网

每周执行一次php代码,但每天执行一次

每周执行一次php代码,但每天执行一次,php,mysql,random,Php,Mysql,Random,我正在做一个PHP促销活动,为数据库中存储的商店提供折扣。每周一次,随机的一天和一周内的时间,我需要运行sql查询并显示折扣优惠券 我在找这样的东西: if(once_a_week()){ show_discount_coupon(); } 这比我想象的要困难得多,有没有关于如何面对这个问题的建议?我找到了一种非常快速和肮脏的方法来做你想做的事情,但它不是很安全: 我找到了一种快速而肮脏的方法来完全满足您的需求,但它并不十分安全: 在数据库或配置文件中创建两个字段,例如“下周”、“更新时间”

我正在做一个PHP促销活动,为数据库中存储的商店提供折扣。每周一次,随机的一天和一周内的时间,我需要运行sql查询并显示折扣优惠券

我在找这样的东西:

if(once_a_week()){
show_discount_coupon();
}

这比我想象的要困难得多,有没有关于如何面对这个问题的建议?

我找到了一种非常快速和肮脏的方法来做你想做的事情,但它不是很安全:


我找到了一种快速而肮脏的方法来完全满足您的需求,但它并不十分安全:

  • 在数据库或配置文件中创建两个字段,例如“下周”、“更新时间”
  • 在脚本中,为字段生成值

    $next_week_day=兰特(1,7)

  • 3.检查脚本中的日期:

    <?php
      if(date("N") == $next_week_day){
          show_discount_cuppon();
          if($update_time<time()){
             $update_time = time();
          }
        $next_week_day = rand(1,7);
      }
    ?>
    
    
    
  • 在数据库或配置文件中创建两个字段,例如“下周”、“更新时间”
  • 在脚本中,为字段生成值

    $next_week_day=兰特(1,7)

  • 3.检查脚本中的日期:

    <?php
      if(date("N") == $next_week_day){
          show_discount_cuppon();
          if($update_time<time()){
             $update_time = time();
          }
        $next_week_day = rand(1,7);
      }
    ?>
    

    我会在数据库中为每周生成随机日期和时间,然后在您网站的代码中检查它。从数据库中获取日期列表中的第一个日期,并对其进行测试:

    if $date_today == $next_coupon_date{ showCoupon(); }
    
    在该周之后,您将删除此日期,并将使用第行中的下一个日期。:)


    这样,一旦创建了日期,您就再也不用担心任何事情了。

    我会在数据库中为每周生成随机日期和时间,然后在您网站的代码中进行检查。从数据库中获取日期列表中的第一个日期,并对其进行测试:

    if $date_today == $next_coupon_date{ showCoupon(); }
    
    在该周之后,您将删除此日期,并将使用第行中的下一个日期。:)


    这样,一旦创建了日期,您就再也不用担心任何事情了。

    只要每周在您喜欢的时候手动运行脚本,就可以获得绝对的成功randomness@NiftyDude:考虑到正常的睡眠时间,这并不是真正的“绝对”规律显示优惠券的时间范围的粒度是多少?这张优惠券是从这段时间一直显示到周末,还是只显示一个特定的时间跨度?@Paul不确定睡眠时间与随机性有什么关系:如果你建议“手动”运行,我肯定他会在睡觉时释放所有的时间。;)这样,它就不会在整个一周内(全部168小时)都是随机的。只要每周在你喜欢的时候手动运行脚本,就可以得到绝对的效果randomness@NiftyDude:考虑到正常的睡眠时间,这并不是真正的“绝对”规律显示优惠券的时间范围的粒度是多少?这张优惠券是从这段时间一直显示到周末,还是只显示一个特定的时间跨度?@Paul不确定睡眠时间与随机性有什么关系:如果你建议“手动”运行,我肯定他会在睡觉时释放所有的时间。;)这样,它就不会在整个星期内(全部168小时)是随机的。一旦日期过去,就不需要手动删除。只需为一年中的每一周创建一个包含一条记录的表,并在该记录中随机选择一个时间。该脚本可以检查它是哪一周,拉取相应的时间,并显示优惠券,如果它是在一定的时间内的时间。谢谢,我认为这应该做它不需要手动删除日期一旦过去。只需为一年中的每一周创建一个包含一条记录的表,并在该记录中随机选择一个时间。脚本可以检查它是哪一周,拉取相应的时间,并显示优惠券,如果它在一定的时间内。谢谢,我认为这应该做到