即使我输入了正确的用户名和密码数据,我的登录页面也不会将我重定向到下一个网页。
当我检查config.inc并将其发送到config.php
时它不会在网页上显示任何内容。
任何建议
CONFIG.INC
$con=mysqli_connect("localhost","root@localhost","","test");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
LOGINPROC PAGE
<?php
// Inialize session
session_start();
// Include database connection settings
include('config.inc');
// Retrieve username and password from database according to user's input
$login = mysql_query("SELECT * FROM users WHERE (username = '" . mysql_real_escape_string($_POST['username']) . "') and (password = '" . mysql_real_escape_string(md5($_POST['password'])) . "')");
// Check username and password match
if (mysql_num_rows($login) == 1) {
// Set username session variable
$_SESSION['username'] = $_POST['username'];
// Jump to secured page
header('Location: securedpage.php');
}
else {
// Jump to login page
header('Location: index.php');
}
?>
securedpage.php
<?php
// Inialize session
session_start();
// Check, if username session is NOT set then this page will jump to login page
if (!isset($_SESSION['username'])) {
header('Location: index.php');
}
?>
<html>
<head>
<title>Secured Page</title>
</head>
<body>
<p>This is secured page with session: <b><?php echo $_SESSION['username']; ?></b>
<br>You can put your restricted information here.</p>
<p><a href="logout.php">Logout</a></p>
</body>
</html>
答案 0 :(得分:0)
确保在标题函数之前没有输出任何内容,包括PHP文件中的任何空格和任何包含的PHP文件
答案 1 :(得分:0)
同时检查文件是否有任何BOM unicode,这通常是编辑器应用程序中的一个选项,我建议你注释标题函数并使用echo来检查if或else是否正在完成
答案 2 :(得分:0)
您的表单是在同一个登录页面还是单独的页面中?如果它在同一个登录页面中,请尝试使用if ($_POST['submit'])
然后运行您的代码。如果它在一个单独的页面中,请确保在表单操作中您有登录页面的路径。