基本的に私がここに設定したのは、非常にシンプルで一般的なログインです。コードのコピー全体を貼り付けて貼り付けました。しかし、PHPプログラムが関数を否定していますか?
$user = mysql_real_escape_string($_POST['User']);
$pass = mysql_real_escape_string(md5($_POST['Pass']));
$conn = mysql_connect("localhost", "root") or die(mysql_error());
(mysql_select_db('fireworks', $conn));
$ask = "SELECT * FROM name WHERE (User = '" . $user . "') and (Pass = '" . $pass . "');";
$result = mysql_query($ask);
以下のコードは完全に無視されています。ログイン(インデックスページから)を押すと、一連の小切手を実行することになっています。ユーザーは、以下の文字列のショーを返すために仮定されているユーザーとパスワードテキストボックス内の何も入れていないことを決定した場合:(ここまで^)
if (strlen($user) < 1){
if (strlen($pass) < 1){
print "<p class = 'Back'>Epic Fail</p>";
print "<p>You forgot to put in your Username or Password.</p>";
}
}
をしかし、それはしていません。代わりにその空白のページ。しかし、他のすべては正常に動作します。私が偽のユーザーを入力すると、「あなたは失敗します!」というメッセージが返されます。有効なユーザーを入力すると、「WELCOME BACK」が返されます。
if (strlen($user) >= 1){
if (mysql_num_rows($result) >= 1) {
while ($row = mysql_fetch_array($result))
{
print "<p class='Back'>Welcome back</p><p>" . $row['User'] . "</p>";
}
}else{
print "YOU FAIL!!!";
}
}
お勧めはありますか?注釈:データベースは花火と呼ばれ、テーブルは名前と呼ばれます。名前テーブルには3つの列があります。名前ID、ユーザー、およびパス。 (これは便利ですが、時にはそれがどのようにIDK)
strlen($ user)の値を確認していますか?たぶん、1 – rwilliams
以上でコードをインデントする必要があります。読みやすくすることができます。 – Spudley