当前位置: 首页 > 知识库问答 >
问题:

如何修复页面重定向不正确

燕璞
2023-03-14

我正在尝试使用google api for php登录,然后将用户重定向到dashboard.php,但是在重定向我的文件时突然出现了这个错误:这个回调文件负责标记并重定向到dashboard.php

<?php
session_start();
require_once("../gog.php");
 
    if (isset($_SESSION['access_token']))
        $gClient->setAccessToken($_SESSION['access_token']);
    else if (isset($_GET['code'])) {
        $token = $gClient->fetchAccessTokenWithAuthCode($_GET['code']);
        $_SESSION['access_token'] = $token;
    } else {
        header('Location:../index.php');
        exit();
    }

    $oAuth = new Google_Service_Oauth2($gClient);
    $userData = $oAuth->userinfo_v2_me->get();



    header('Location:../client/dashboard.php');
        exit();


?>

包含设置的gog.php(我删除了这些值)

<?php
    require_once "vendor/autoload.php";
    $gClient = new Google_Client();
    $gClient->setClientId("");
    $gClient->setClientSecret("");
    $gClient->setApplicationName("");
    $gClient->setRedirectUri("");
    $gClient->addScope("");
    $loginURL = $gClient->createAuthUrl();


?>

索引php,它检验用户是否使用google帐户或电子邮件pwd登录

<?php
require_once("includes/config.php");
require_once("gog.php");
require_once("includes/classes/Account.php");


$account=new Account($con);
if(isset($_SESSION["clientLoggedIn"]) || isset($_SESSION['access_token']) ){
    header('location:client/dashboard.php');
    exit();
}
?>

包含的config.php文件具有要连接的数据库设置

<?php

ob_start();
session_start();


try{
    $con= new PDO("mysql:dbname=cinecad;host=localhost","root","");
    $con->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);

}catch(PDOException $e){
    exit("Connexion failed:".$e->getMessage());
}

?>

最后是dashbaord.php

<?php
session_start();

if(!isset($_SESSION["clientLoggedIn"])||!isset($_SESSION['access_token'])){

    header("Location:../index.php");
}



?>

共有1个答案

鲜于念
2023-03-14

根据@Alon Eitan注释,答案是$_session[“ClientLoggedIn”]=true

 类似资料:
  • 我有一个两步验证表单,这意味着第一个用户输入得到验证(在ValidatecKetData控制器中),如果一切正常,您可以进入下一个表单页面,我可以通过 问题:在第二页,用户需要上传一个文件,如果他不这样做,验证失败。 如果是这种情况,验证器类立即重定向,因为它是后路由,所以不起作用。 所以我创建了一个这样的获取路线: 并将其放入-方法: 我把它放到了-method中,因为如果用户不在第二页附加文件

  • 我正在使用Asgard CMS,这是一个基于Laravel 5.1构建的模块化CMS,并且在我创建的特定模块中面临上述问题。 整个站点都有很多post请求和重定向,这很好,但是当涉及到配置文件模块时,我遇到了这个问题。 我将一个编辑请求发布到一个路由,在完成一些工作后,我重定向回路由。当我重定向时,它会显示一个空白页面,上面写着“重定向到”http://www...“首先写入,然后在2-3秒后重定

  • 问题内容: 我想做的是,当他们最初使用此方法时,进入免责声明页面,然后在此之后的任何时候都转到另一个页面。我当前的方法只是带给我免责声明页面。让我知道是否需要进一步解释…谢谢!!! 基本上,我需要在第一次点击此方法时添加一个If来转到页面,我想是这样的: 问题答案: 当该人第一次点击该页面时,在会话层上抛出一个标志。然后,无论何时有人进入页面,您都可以检查它是否存在,并相应地重定向他们。唯一的问题

  • 页面重定向在Web应用程序有很多原因是必要的。您可能希望将用户重定向到另一个页面,当一个特定的动作发生,或者有错误的情况下。例如,当用户登录网站,他经常被重定向到他的主页或个人的仪表板。在Django中,定向使用“redirect”的方法来实现。 在“redirect”方法需要作为参数:URL要被重定向到的字符串的视图名字。 myapp/views 到现在为止如下所示 − 让我们修改hello,以

  • 问题内容: PHP是否可以在执行函数后进行重定向调用?我正在创建一个函数,希望将其重定向到位于同一根文件夹中的文件。能做到吗 问题答案: 是的,您将使用标题功能。 在此之后立即调用是一个好习惯,这样就不会执行其下面的代码。 另外,从文档中: 请记住,必须先通过常规HTML标记,文件中的空白行或从PHP发送任何实际输出,然后调用header()。使用include()或require(),函数或另一

  • 当需要将文档移动到一个新的位置时,就需要使用JSP重定向了。 最简单的重定向方式就是使用response对象的sendRedirect()方法。这个方法的签名如下: public void response.sendRedirect(String location) throws IOException 这个方法将状态码和新的页面位置作为响应发回给浏览器。您也可以使用setStatus()和