PHP加载问题"重定向次数太多"

时间:2018-04-20 11:38:39

标签: php

localhost重定向了你太多次了。尝试清除您的cookie。 ERR_TOO_MANY_REDIRECTS

我的代码工作得非常好,但今天发生此错误并不十分确定原因。我已经清除浏览数据,删除了cookie,但没有任何作用。我网站的其余部分运行良好,只是这个用户登录页面。我正在使用PHPstorm。

 <?php
 include_once("db.php");

 if (isset($_POST['Login'])) {
    $email = $_POST['email'];
    $password = $_POST['pwd'];
    $path = "home.php";
    $select = "SELECT * FROM finalflight.tbl_book 
            WHERE email='" . $email . "' 
            AND ContactNo='" . $password . "'";
    $query = mysqli_query($conn, $select); 
}



if ($row = mysqli_fetch_assoc($query)) {
    session_start();
    $_SESSION['email'] = $row['email'];
    $_SESSION['name'] = $row['BookedBy'];
    $_SESSION['ContactNo'] = $row['ContactNo'];
    $_SESSION['bookid'] = $row['SrNo'];
    $_SESSION['uid'] = session_id();
    $path = "home.php";
} else {
    $path = "login.php?msg='unable to login'";
}
header("location:$path");

我已附上错误消息截图。我很想知道为什么会发生错误,想知道是否有人可以解释实际情况。 PHPstorm为我的页面提供了一个重定向链接,我将其复制到剪贴板并将其粘贴到我的浏览器中,但这似乎不起作用。这是编程问题还是Web浏览器问题?我查看了我的代码,似乎没有任何错误。我曾尝试多次重新加载网页浏览器,删除历史似乎没什么用。

Error Message

2 个答案:

答案 0 :(得分:0)

您正在调用header功能,而页面会导致更多重定向的原因。在提交帖子后致电header

试试这个,

<?php
include_once("db.php");
if (isset($_POST['Login'])) {
    $email = $_POST['email'];
    $password = $_POST['pwd'];
    $path = "home.php";
    $select = "SELECT * FROM finalflight.tbl_book 
            WHERE email='" . $email . "' 
            AND ContactNo='" . $password . "'";
    $query = mysqli_query($conn, $select); 

    if ($row = mysqli_fetch_assoc($query)) {
        session_start();
        $_SESSION['email'] = $row['email'];
        $_SESSION['name'] = $row['BookedBy'];
        $_SESSION['ContactNo'] = $row['ContactNo'];
        $_SESSION['bookid'] = $row['SrNo'];
        $_SESSION['uid'] = session_id();
        $path = "home.php";
    } else {
        $path = "login.php?msg='unable to login'";
    }
    header("location:$path");
}

答案 1 :(得分:0)

如果你深入挖掘,你的浏览器会告诉你出了什么问题。可能你的PHP错误记录试图告诉你一些问题。

猜测,您向我们展示的代码可能正常,但您重定向到的页面会将您发送回此页面 - 但您永远不应该重定向此代码!实际上,应该重新编写您向我们展示的代码,以处理在没有完全梨形的情况下检索它而没有所需的POST变量的情况。

使用浏览器中的网络监视器查看您获得302响应的位置以及他们指示您的位置。确保您的错误记录正常工作并记录错误。