Php 如果页面被访问超过5次,是否将访问者重定向到其他url?
如果用户访问页面超过5次,我会尝试重定向用户。 所以基本的想法是,如果一个用户没有登录到我的网站,并且他们正在浏览一个用户配置文件(profile.php),那么这将计算cookie会话的点击次数,并重定向到一个页面,说“注册”或其他什么Php 如果页面被访问超过5次,是否将访问者重定向到其他url?,php,session,redirect,cookies,Php,Session,Redirect,Cookies,如果用户访问页面超过5次,我会尝试重定向用户。 所以基本的想法是,如果一个用户没有登录到我的网站,并且他们正在浏览一个用户配置文件(profile.php),那么这将计算cookie会话的点击次数,并重定向到一个页面,说“注册”或其他什么 我是php新手,不知道从哪里开始。请有人给我看看。基本上,您应该能够在服务器端的会话变量或cookie中设置计数器。 每次访问个人资料页面时,增加该计数器。如果该计数器大于5,则使用phpheader函数将用户重定向到注册页面。下面是一个快速代码提示,提示您使
我是php新手,不知道从哪里开始。请有人给我看看。基本上,您应该能够在服务器端的会话变量或cookie中设置计数器。 每次访问个人资料页面时,增加该计数器。如果该计数器大于
5
,则使用phpheader
函数将用户重定向到注册页面。下面是一个快速代码提示,提示您使用会话变量来实现此目的:
if(! isset($_SESSION["ProfileVisitCount"])){
$_SESSION["ProfileVisitCount"] = 1;
}
$_SESSION["ProfileVisitCount"]++;
if($_SESSION["ProfileVisitCount"] > 5){
header("Location: http://domain.com/signup");
exit();
}
另外,请确保在这些代码之前使用session\u start()
启动php会话
同样的事情也可以通过使用cookies实现,如下所示:
if(! isset($_COOKIE["ProfileVisitCount"])){
setcookie("ProfileVisitCount", "1", time()+3600);
}
if($_COOKIE["ProfileVisitCount"] > 5){
header("Location: http://domain.com/signup");
exit();
}
else {
setcookie("ProfileVisitCount", ($_COOKIE["ProfileVisitCount"] + 1), time()+3600);
}
工具书类
5
,则使用phpheader
函数将用户重定向到注册页面。下面是一个快速代码提示,提示您使用会话变量来实现此目的:
if(! isset($_SESSION["ProfileVisitCount"])){
$_SESSION["ProfileVisitCount"] = 1;
}
$_SESSION["ProfileVisitCount"]++;
if($_SESSION["ProfileVisitCount"] > 5){
header("Location: http://domain.com/signup");
exit();
}
另外,请确保在这些代码之前使用session\u start()
启动php会话
同样的事情也可以通过使用cookies实现,如下所示:
if(! isset($_COOKIE["ProfileVisitCount"])){
setcookie("ProfileVisitCount", "1", time()+3600);
}
if($_COOKIE["ProfileVisitCount"] > 5){
header("Location: http://domain.com/signup");
exit();
}
else {
setcookie("ProfileVisitCount", ($_COOKIE["ProfileVisitCount"] + 1), time()+3600);
}
工具书类
- 这在PHP中很容易实现。只需使用count值设置一个会话,并在每次访问后读取它。然后,如果计数为5或更多,则可以重定向。下面是一个示例代码
!session_id() ? session_start() : null;
if(!isset($_SESSION['page_access_count'])){
$_SESSION['page_access_count'] = 1;
}elseif($_SESSION['page_access_count'] >= 5){
// redirect to signup page
header('Location:/signup.php');
exit;
}
// increase the page access session value
$_SESSION['page_access_count']++;
...
!会话id()?session_start():null;
如果(!isset($\u会话['page\u access\u count'])){
$\会话['page\ u access\ u count']=1;
}elseif($\会话['page\ u access\ u count']>=5){
//重定向到注册页面
标题('Location:/signup.php');
出口
}
//增加页面访问会话值
$\会话['page\ u access\ u count']++;
...
这在PHP中很容易实现。只需使用count值设置一个会话,并在每次访问后读取它。然后,如果计数为5或更多,则可以重定向。下面是一个示例代码 !session_id() ? session_start() : null; if(!isset($_SESSION['page_access_count'])){ $_SESSION['page_access_count'] = 1; }elseif($_SESSION['page_access_count'] >= 5){ // redirect to signup page header('Location:/signup.php'); exit; } // increase the page access session value $_SESSION['page_access_count']++; ... !会话id()?session_start():null; 如果(!isset($\u会话['page\u access\u count'])){ $\会话['page\ u access\ u count']=1; }elseif($\会话['page\ u access\ u count']>=5){ //重定向到注册页面 标题('Location:/signup.php'); 出口 } //增加页面访问会话值 $\会话['page\ u access\ u count']++; ...
使用饼干。下面是我在PHP中的实现方式:
<?php
if (!isset($_COOKIE["cookie1"]))
{
setcookie(
"cookie1",
"1",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
}
else{
setcookie(
"cookie2",
"2",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
else{
setcookie(
"cookie3",
"3",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
}
else{
setcookie(
"cookie4",
"4",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
}
else{
setcookie(
"cookie5",
"5",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
}
else
{
header("Location: http://domain.com/signup");
}
}
?>
确保用您的域名替换.example.com。如果您希望在使用带有“www”的域名或不使用“www”的域名运行它时,它可以正常工作,请保留“.”而不是“www”
告诉我它是否有效。。。我可以随时修改它。使用cookies。下面是我在PHP中的实现方式:
<?php
if (!isset($_COOKIE["cookie1"]))
{
setcookie(
"cookie1",
"1",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
}
else{
setcookie(
"cookie2",
"2",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
else{
setcookie(
"cookie3",
"3",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
}
else{
setcookie(
"cookie4",
"4",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
}
else{
setcookie(
"cookie5",
"5",
time() + (20 * 365 * 24 * 60 * 60),
'/',
'.example.com'
);
}
else
{
header("Location: http://domain.com/signup");
}
}
?>
确保用您的域名替换.example.com。如果您希望在使用带有“www”的域名或不使用“www”的域名运行它时,它可以正常工作,请保留“.”而不是“www”
告诉我它是否有效。。。我可以随时修改它。为什么设置多个cookie,而一个就足够了?@Arash Milani这听起来可能有点脏,但它可以工作。它可以做饼干。下一次访问,它创建一个新的,下一次访问,它创建一个新的,等等,直到第五个cookie重定向。这是我的计算方法。。。也许不是最好的。。。你的方法要好得多:为什么设置多个cookies,而一个就足够了?@Arash Milani这听起来可能有点脏,但它是有效的。它可以做饼干。下一次访问,它创建一个新的,下一次访问,它创建一个新的,等等,直到第五个cookie重定向。这是我的计算方法。。。也许不是最好的。。。你的方法要好得多:不要忘记选择并接受最适合你的答案!别忘了选择并接受最适合你的答案!