我使用PHP 7来开发关于开发网站的项目。我是PHP的新手,现在我遇到登录会话的问题,当我输入正确的用户名和密码时,它会显示消息"用户名或密码错误"并且无法登录。我不知道哪个部分出了问题。请帮我。我们将不胜感激。这是我的代码。
<?php session_start(); ?>
<html>
<head>
<style type="text/css">
#login{
width: 300px;
border: 1px solid #c8c8c8;
margin: 80px auto;
text-align: center;
font-family: calibri;
background: #f1f1f1;
border-radius: 4px;
box-shadow: 0 0 6px gray;
}
#login h2{
background: #222;
margin: 2px;
margin-bottom: 18px;
color: #FFF;
font-size: 18px;
padding: 4px;
}
</style>
<title></title>
</head>
<body>
<div id="login">
<form action="login_process.php" method="post">
<h2>Login</h2>
<?php
if (!empty($_SESSION['error']))
{
foreach ($_SESSION['error'] as $er)
{
echo '<font color="red">'.$er.'</font><br />';
}
unset($_SESSION['error']);
}
?>
<b>Username : </b>
<input type="text" name="unm">
<br /><br />
<b>Password : </b>
<input type="password" name="pwd">
<br /><br />
<input type="submit" value="Sign In">
<br /><br />
</form>
</div>
</body>
</html>
<?php session_start();
if (!empty($_POST))
{
extract($_POST);
$_SESSION['error']=array();
if (empty($unm) || empty($pwd))
{
$_SESSION['error'][]="Please enter username or password";
header("location:login.php");
}
else
{
include("include/config.php");
$q ="SELECT * FROM admin
WHERE a_unm='$unm' AND a_pwd='$pwd'";
$res=mysqli_query($q,$link);
$row=mysqli_fetch_assoc($res);
if (!empty($row))
{
$_SESSION['admin']['unm']=$row['a_unm'];
$_SESSION['admin']['pwd']=$row['a_pwd'];
$_SESSION['admin']['status']=true;
header("location:index.php");
}
else
{
$_SESSION['error'][]="Wrong Username or Password";
header("location:login.php");
}
}
}
else
{
header("location:login.php");
}
?>
<?php
$link= mysqli_connect("localhost","root","");
mysqli_select_db("course_registration_system",$link);
?>
答案 0 :(得分:1)
我已修复您的问题:请尝试以下代码
<强> login_process.php 强>
<?php session_start();
if (!empty($_POST))
{
extract($_POST);
$_SESSION['error']=array();
if (empty($unm) || empty($pwd))
{
$_SESSION['error'][]="Please enter username or password";
header("location:login.php");
}
else
{
include("include/config.php");
$q ="SELECT * FROM admin WHERE a_unm='$unm' AND a_pwd='$pwd'";
$res=mysqli_query($link,$q);
$row=mysqli_fetch_assoc($res);
if (!empty($row))
{
$_SESSION['admin']['unm']=$row['a_unm'];
$_SESSION['admin']['pwd']=$row['a_pwd'];
$_SESSION['admin']['status']=true;
header("location:index.php");
}
else
{
$_SESSION['error'][]="Wrong Username or Password";
header("location:login.php");
}
}
}
else
{
header("location:login.php");
}
?>
<强>的config.php 强>
<?php
$link= mysqli_connect("localhost","root","","course_registration_system");
//mysqli_select_db("course_registration_system",$link);
?>