我正在尝试在同一页面上显示错误消息。我知道我必须使用javascript。到目前为止这是我的代码。然而它之后说了1。我知道这是来自我的数字!== 0我怎么能摆脱这个1.
<?php
session_start();
$username = $_POST['username'];
$password = $_POST['password'];
if ($username&&$password)
{
$host_name = 'localhost';
$db_user ='root';
$db_pass = '';
$db_name = 'login';
/* Connect to MySQL */
$con = mysql_connect("$host_name","$db_user","$db_pass") or die ("Couldn't connect!");
$db = mysql_select_db("$db_name") or die ("Couldn't connect to database!");
$query = mysql_query("SELECT * FROM users WHERE username='$username'");
$numrows = mysql_num_rows($query);
if ($numrows!=0)
{
while ($row = mysql_fetch_assoc($query))
{
$dbusername = $row['username'];
$dbpassword = $row['password'];
}
/*Check to see if they match! */
if ($username==$dbusername&&$password==$dbpassword)
{
echo "You're in! <a href='member.php'> Click</a> here to enter the member page";
$_SESSION['username']==$username;
}
else
echo "Incorrect password";
}
else
die("That user doesn't exist!");
echo $numrows;
}
else
die("Please enter username and/or password!");
?>
答案 0 :(得分:3)
你真的不需要JavaScript来做到这一点。你可以用PHP做到这一点。如下图所示。
我修改了您的PHP代码。将其放在您执行登录的文件中。
<?php
session_start();
$username = $_POST['username'];
$password = $_POST['password'];
if (!empty($username) && !empty($password))
{
$host_name = 'localhost';
$db_user ='root';
$db_pass = '';
$db_name = 'login';
$con = mysql_connect($host_name, $db_user, $db_pass) or die ("Couldn't connect!");
$db = mysql_select_db($db_name) or die ("Couldn't connect to database!");
$query = mysql_query("SELECT * FROM users WHERE username=".mysql_real_escape_string($username)." and password = ".mysql_real_escape_string($password));
$numrows = mysql_num_rows($query);
if($numrows == 1)
{
$_SESSION['username'] = $username; //Store username to session for futher authorization
header("Location: member.php"); //Redirect user to home page
}
else {
$_SESSION['errMsg'] = "Invalid username or password";
}
header("Location: login.php"); //Redirect user back to your login form
}
else {
die("Please enter username and/or password!");
}
?>
只需在登录表单上执行此类操作即可。
<?php session_start(); ?>
<html>
<body>
<div id="errMsg">
<?php if(!empty($_SESSION['errMsg'])) { echo $_SESSION['errMsg']; } ?>
</div>
<?php unset($_SESSION['errMsg']); ?>
</body>