gpt4 book ai didi

php - 每周从 MySQL 数据库中的固定数量的更新中发布更新

转载 作者:太空宇宙 更新时间:2023-11-03 12:34:00 26 4
gpt4 key购买 nike

我有一个包含 200 个更新的存档网站,其信息全部存储在 MySQL 数据库中。

我想在网站上显示一个固定数量,比如 52 个,并且每周轮换一个出一个,另一个轮入一个,始终将总数保持在 52 个。

这不是更新数据库的问题,信息是固定的。这是一次在网站本身上显示来自数据库 52 的“循环”更新的问题。我正在绞尽脑汁试图找出查询。

到目前为止,我还没有尝试任何东西,因为我想出的任何东西都没有意义。

根据我自己研究和得出的结论,将信息作为开始日期和结束日期硬编码到数据库表中(对我来说)是一种愚蠢的做法。这个更新数量是固定的,我只是希望它们永远永远一次显示 52,比如说每个星期五。

我有一个运行 PHP 5.3.20 的专用服务器,MySQL/MySQLi 是 5.5.27(我在 MySQLi 中编写代码)。

无论我在哪里看,或者我多么深入地研究我的书,我都找不到这个问题的答案。任何帮助将不胜感激!

最佳答案

我会尝试创建一个函数来计算自某个日期以来的周数,然后从该函数向您的数据库查询添加一个偏移量:

<?php

$starttime = strtotime("28 December 2012"); // a recent Friday
$week = 7 * 24 * 60 * 60; // time value of a week
$posts = 200; // number of posts in your db
$limit = 52; // number of shown posts
$offset = floor((time()-$starttime)/$week); // rounds down difference in weeks from startdate until now
while ($offset>$posts-$limit) $offset = $offset - ($posts-$limit);
// this will make the cycle start over when you have reached the end (ie offset 148)...

?>

然后只需在查询中使用偏移量和限制的返回值:

  'SELECT ... LIMIT '.$offset.','.$limit;

关于php - 每周从 MySQL 数据库中的固定数量的更新中发布更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14107359/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com