我正在做一个网页的作业。 我将索引页面创建为登录页面,其中包含用户名输入、密码输入和登录按钮。
当我点击按钮时,一段php代码(如下所示)已执行:它使用MySQL进行登录。
我的登录问题是重定向。如果输入的用户名和密码正确,页面应该转到下一页(例如下一页的链接是 http://stackoverflow.com )。
我使用header("location:<a href="http://stackoverflow.com" rel="noreferrer noopener nofollow">http://stackoverflow.com</a>");
转到下一页,但出现以下错误:
Warning: Cannot modify header information - headers already sent by (output started at /users/kzr/www/index.php:60) in /users/kzr/www/index.php on line 14
我已经尝试过ob_start()
与 ob_end_flush()
,但他们没有改变情况:错误是相同的。
有人可以帮助我使用这段代码吗?
注意:PHP 和 HTML 代码位于同一个文件中,但我将它们分开。
PHP 代码:
if(isset($_POST["login"])){
$username=$_POST["username"];
$password=$_POST["password"];
$connect=mysql_connect("127.0.0.1","kzr_zetr","350adagsertesborda");
if($connect){
$db=mysql_select_db("kzr_zetr");
if($db){
$query=mysql_query("SELECT * FROM login WHERE username = '$username' AND password = '$password'");
$rowcount=mysql_num_rows($query);
if($rowcount>0){
$uri="http://kzr.bplaced.de/session/?username=".$username;
header('Location:'.$uri);
print 'sucess';
}else{
echo "<script type='text/javascript'>login_f_val_phperr();</script>";
print 'fail';
}
}
}
}
HTML 代码:
<!DOCTYPE html>
<html>
<head>
<title>Bejelentkezés | ZETR</title>
<meta charset="utf-8" />
<meta name="author" content="Kókai Z. Ronald" />
<meta name="contact" content="zr.kokai@gmail.com" />
<meta name="description" content="(Konrad) Zuse Elektronikus Tanulmányi Rendszer" />
<meta name="keywords" content="konrad, zuse, konrad zuse, etr, rendszer, tanulmányi rendszer" />
<meta name="subject" content="Alkalmazott Informatika Házi Feladat Varga István Tanár Úrnak" />
<base href="http://kzr.bplaced.de" />
<link rel="stylesheet" type="text/css" href="/f/font/ubuntu/ubuntu.css" />
<link rel="stylesheet" type="text/css" href="/f/css/zetr.css" />
<link rel="stylesheet" type="text/css" href="/f/css/login.css" />
<link rel="shortcut icon" type="image/x-icon" href="/f/img/favicon.ico" />
<script type="text/javascript" src="/f/script/login-f.js"></script>
</head>
<body>
<div id="container">
<h1>Zuse</h1>
<h2>Elektronikus Tanulmányi Rendszer</h2>
<div id="loginbox">
<form name="login-f" action="" onsubmit="return login_f_val()" method="post">
<input type="text" name="username" id="username" placeholder="Felhasználónév" autocomplete="off" />
<input type="password" name="password" id="password" placeholder="Jelszó" />
<input type="submit" name="login" id="login" value="Bejelentkezés" />
</form>
</div>
</div>
</body>
</html>
最佳答案
尝试在标题后面放置一个退出,如下所示:
标题(...);退出;
关于php - PHP登录后进入下一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23269708/