我正在使用 PHP 和 MySQL 创建一个简单的用户登录页面,其中只包含两个选项,用户名和密码....这是代码:
<form id="form1" name="form1" method="post" action="verify_user.php">
<p align="center">Username :
<input type="text" name="name" id="name" />
</p>
<p align="center">Password :
<input type="password" name="pass" id="pass" />
</p>
<p align="center">
<input type="submit" name="submit" id="submit" value="Login" />
</p>
</form>
<h3 align="center" class="para">
<?php
if(isset($_GET['id'])) {
echo $_GET['id'];
}
?>
</h3>
这里是 verify_user.php 的代码,它将执行用户的登录/注册:
<?php
$uname = $_POST['name'];
$pass = $_POST['pass'];
$qry = mysql_query("SELECT * FROM login WHERE user='$uname'", $con);
if(!$qry) {
die("Query Failed: ". mysql_error());
} else {
$row=mysql_fetch_array($qry);
if ($uname==$row['user']) {
if($uname=='' || $pass=='') {
header("Location:login.php?id=Some fields are empty");
} else if($uname==$row['user'] && $pass==$row['password']) {
header("Location: welcome.php?id=$uname");
} else {
header("Location:login.php?id=username already taken or your password is incorrect. Please try again");
}
} else {
mysql_query("alter table login auto_increment = 1;");
$qry_name=mysql_query("INSERT INTO login(user,password) VALUES('$uname','$pass')");
header("Location: welcome.php?id=$uname");
}
}
此代码中的唯一问题是,当用户将任何字段留空时,它必须得到错误“某些字段为空”......当用户将用户名留空但不使用密码时它正在工作。 ..请帮帮我。