gpt4 book ai didi

php - 在 PHP 中替代 "header"进行重定向

转载 作者:可可西里 更新时间:2023-10-31 22:52:41 25 4
gpt4 key购买 nike

我正在做一个项目,我需要在别人的网络服务器上运行我的程序。这是一个非常简单的登录页面,但我遇到了问题。如果我通过 WAMP 通过我的本地主机运行该程序,该程序将正常运行。我遇到的问题是重定向部分无法正常工作,它会验证用户并启动 session ,但是当它到达重定向时什么也没有发生。

要么是我的语法出了问题,我认为这不太可能,因为它确实可以通过我的本地主机正常工作。或者我认为服务器没有该功能(不确定是否可以选择您的服务器支持的模块,尽管我确定它是可行的)。

我不知道这是否重要,但他们正在使用“cpanel”,这是我可以访问文件的地方,并且所有文件都在同一个目录中,所以如果有人可以告诉我我哪里出错了或者建议重定向的替代方法通过“标题”任何帮助将不胜感激。我环顾四周,但似乎“标题”是标准的工作马。

这是我的代码:

if( (!empty($_POST['username'])) && (!empty($_POST['password'])) )
{
// username and password sent from Form
$myusername = $_POST['username'];
$mypassword = $_POST['password'];


$sql="SELECT UserName FROM User WHERE UserName='$myusername' and Password='$mypassword'";

$result=mysql_query($sql);

$row=mysql_fetch_array($result);
//$active=$row['active'];
$count=mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1)
{
echo "we made if to the if";
session_start();
session_register("myusername");
$_SESSION['login_user']=$myusername;
echo "right b4 the re-direct";
header("location: UI.php");
exit;
}
else
echo "Your user name/password was not correct pleast TRY AGAIN!!!";

}

更新:为了回应关于 echo 的陈述,我在同一个文件中处理我的表单并使用 echo $_SERVER['PHP_SELF'] 可能会出现问题

最佳答案

我使用此函数进行重定向...

这在所有情况下都有效..即使标题已经发送..甚至 javascript 被禁用..

function redirect($url)
{
if (!headers_sent())
{
header('Location: '.$url);
exit;
}
else
{
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
echo '</noscript>'; exit;
}
}

关于php - 在 PHP 中替代 "header"进行重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8689471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com