如何强制所有访问者先重定向到一个页面,然后可以继续重定向到另一个页面


How to force all the visitors to redirect to one page first then can continue to the other page

我有一个会员区页面示例http://mywebsite.com/private/members.php

并且有一个图库页面,我将链接放在members.php

,这是http://mywebsite.com/private/premium.php

我想做的是,当他们第一次访问时已经登录时,他们要么直接进入http://mywebsite.com/private/premium.php要么点击会员.php页面的premium.php,他们将首先重定向到此页面示例http://mywebsite.com/private/announcement.php然后他们可以在阅读我的公告后单击链接继续

我知道这会很烦人和复杂(也许(,但我只是想让他们先看到我的公告,然后再进入 premium.php 页面。

谢谢

您可以简单地添加一个JavaScript(例如jquery(弹出窗口,并在加载时在/premium.php上覆盖。我认为会是一个更好的方法。或者,您可以使用标头将它们从/premium.php 发送到公告页面。在公告页面上,当他们单击下一步时,设置会话变量。(将"下一步"按钮放在窗体中(。在高级页面上检查该会话变量。如果未设置 - 标头会将它们重定向到公告页面,否则它们将保留在/premium 上.php仍然认为简单的模块化弹出窗口将是进行公告的更好方法。

如果您有登录历史记录表,则可以检查上次公告的update_dt,并将其与用户上次登录的login_dt进行比较。如果他们自上次公告以来尚未登录,您可以将他们定向到您的页面。

我可能会创建一个桥接表来将公告和用户联系在一起。 此表将存储用户表的主键、公告表中的主键,以及指示用户已看到公告的布尔字段,或用于在他们阅读公告时显示的日期/时间字段。(或两者,如果你愿意(

当用户点击您的高级页面时,您可以通过查询此表来检查用户是否已阅读公告。 如果尚未阅读公告,它将是一个简单的标题重定向,以将它们带到正确的页面。

如果您希望他们在某个时间段后每次都看到您的公告,您可以设置一个cookie一段时间(例如 10 天(,看看它是否存在(如果没有,它已过期,您再次显示您的公告(。

如果您希望他们在您的网站注册后第一次单击它时看到它,我会添加一个带有tinint的数据库表,如果他们没有,则0,如果他们这样做,则更改为1


在您描述的情况下,我不会使用其他网站(您的announcement.php(,但请检查他们阅读您在premium.php网站上的公告。如果他们这样做了(行值设置为 1 (,他们会看到该站点。

如果不是(行值为 0 (,他们会看到您的公告,并且您将数据库中提到的tinyint设置为 1 。看到它后,他们可以单击一个链接(这会将他们重定向到 premium.php -site,所以基本上重新加载页面(,然后再次检查行值是否1(情况就是这样(。因此,他们只能看到您的公告一次。