如果某个用户查看某个页面,请执行操作

时间:2017-08-29 10:48:58

标签: php database wordpress string

我试图为一个wordpress网站进行竞争,其中每天随机选择一个用户并获得一个元值,例如在meta_data中添加#34;今天"或者"胜利者"。

我正在寻找的是检查获胜用户是否已查看获胜(声明)页面的最佳方式。

我愿意接受任何这样做的方式以及我能想到的方式:

  • 将用户元数据与网址中的内容进行匹配,以查看其是否匹配
  • 将用户元数据与页面上某些内容或序列号匹配,看是否匹配。

任何人都可以建议最好/最干净,最可维护的方法来做到这一点。

可以用php完成。

任何帮助都会受到高度赞赏。

非常感谢

大卫

1 个答案:

答案 0 :(得分:0)

如果您的应用程序需要知道特定用户何时打开特定页面,那么您最好的方法可能是在PHP中编写onLoad()函数并在每个相关脚本的顶部调用它。它将是一个集中的地方,您可以在这里进行所有类型的检查。

在数据库中,您可以在其中存储表user_visit_notifications

user_id | page_url          | visited | time_visit
1234    | /path/to/page.php |         |

存储您要观看的所有访问者。然后在onLoad()中,执行类似于下面的代码(可能最好将其分解为onLoad将调用的单独函数:

public function onLoad(){
  // Get all records concerning this user that have not been processed
  // SELECT * from user_visit_notifications WHERE user_id = ? AND visited = NULL
  $user_visits = $db->fetch_all(...); 

  /* TODO: process records: eg: send admin email and set visited and time_visit */
}