0

残念ながら、私のログインフォームでは、データをまったく入力していませんが、ログイン成功として表示されます。特定のエラーが発生しましたか、それともコードを追加する必要がありますか?よろしくお願いします

PHP

<table style= width:300px; border="0"; align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form name="form1" method="post" action="checklogin.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input name="myusername" type="text" id="myusername"></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input name="mypassword" type="text" id="mypassword"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Login"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>

CSS-checklogin.php

<?php

$host="localhost";
$username="root";
$password="";
$db_name="Hockey Club";
$tbl_name="members";


mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");


$myusername=$_POST['username'];
$mypassword=$_POST['password'];


$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$sql="SELECT * FROM members WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);


$count=mysql_num_rows($result);



if($count==1){

$_SESSION['username'] = $myusername];
$_SESSION['password'] = $mypassword];
header("location:login_success.php");
}
else {
echo "Wrong Username or Password";
}
?>

および--login_success.php

<?php
session_start();
if (!isset($_SESSION['myusername'])) {
header("location:Index.php");
}
?>

<html>
<body>
Login Successful
</body>
</html>
4

1 に答える 1

0

パスワードを生の形式でデータベースに保存しないでください。プログラミングに不慣れな場合は、優れたユーザー認証スクリプトがたくさんあります。このように本番サイトを作成する前に、それらを調べてください。

ここから始めるのに最適な場所です。

パスワードのハッシュ

また、mysqlは使用しないでください。mysqliまたはPDOを使用する

これがあなたを動かすためのグーグルリンクです:ユーザー認証

于 2013-01-11T19:32:33.677 に答える