Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.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 是否将else语句添加到页面计数?_Php_Redirect_Count - Fatal编程技术网

Php 是否将else语句添加到页面计数?

Php 是否将else语句添加到页面计数?,php,redirect,count,Php,Redirect,Count,我有一个页面计数来限制注销用户可以查看配置文件的次数。如果用户注销,他们会被重定向到注册页面,这是正确的,应该是正在发生的事情,但当用户登录时,我也会发生同样的事情,如何添加else语句或If语句,以表示仅重定向到注册页面或仅限制未登录时的配置文件命中 谢谢 <? !session_id() ? session_start() : null; verify_profile_visit_limit(); function verify_profile_visit_limit(){

我有一个页面计数来限制注销用户可以查看配置文件的次数。如果用户注销,他们会被重定向到注册页面,这是正确的,应该是正在发生的事情,但当用户登录时,我也会发生同样的事情,如何添加else语句或If语句,以表示仅重定向到注册页面或仅限制未登录时的配置文件命中

谢谢

<?
!session_id() ? session_start() : null;

verify_profile_visit_limit();

function verify_profile_visit_limit(){
    $free_profiles = array(99999,99998,99997,99996,99995,99994,99993);

    if(in_array($_GET["id"], $free_profiles)) return;

    if(! isset($_SESSION["page_access_count"])){
        $_SESSION["page_access_count"] = 1;
    }

    $_SESSION["page_access_count"]++;

    if($_SESSION["page_access_count"] > 5){
        header("Location: limit.php");
        exit();
    }
}

?>

只需添加一个
条件,以便在用户登录时返回:

 if(in_array($_GET["id"], $free_profiles) || isset($_SESSION['loggedIn']) && $_SESSION['loggedIn']) return;

这样,您的函数将在运行限制检查之前返回。假设您在
$\u会话['loggedIn']

中存储一个布尔值(
true
/
false
),您在会话中是否有一个布尔值来表示他们是否登录/注销?您的“登录用户”代码在哪里?是的,我有布尔值,但是我基本上需要修改脚本,如果没有登录,请执行代码如果登录,然后忽略代码。