ユーザー名とパスワードの2つのオプションのみを含む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");
}
}
このコードの唯一の問題は、ユーザーがフィールドを空のままにしておくと、「いくつかのフィールドが空です」というエラーが発生する必要があることです...ユーザーがユーザー名を空のままにしておくと機能しますが、パスワードに対しては機能しません。 ..それで私を助けてください。