0

私はこのフォーラムを利用して、最初の PHP Web サイトを作成する際に助けを求めてきました。ほとんどのものを稼働させていますが、ログインの問題に直面しています。新しいユーザーがサインアップして Web サイトにログインすると、まったく問題なく動作しますが、ログイン データベースを 1 回でも開くか、管理パネルでユーザーのリストを表示すると、以前のすべてのユーザー ログインが失敗し、誰もログインできなくなります。それらがまだデータベースに存在している場合でも、これらの資格情報を再度使用します。何か助けはありますか?以下は私のログインフォームコードです:

<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<html>
    <head>
    </head>
    <body>
        <table border="1" width="100%">
        <form action="user.php" method="post">
        <tr>
           <td><label for="u_name">Your Email-id:</label></td>
           <td><input type="text"name="u_name" id="u_name" placeholder="Enter email-id" required="required"/></td>
        </tr>
        <tr>
           <td><label for="u_password">Password:</label></td>
           <td><input type="password" name="u_password" id="u_password" placeholder="Enter password" required="required"/></td>
        </tr>
        <tr>
           <td colspan="2" align="center"><input type="submit" name="sub" value="login"/></td>
        </tr>
        </table>
        </form>
     </body>
</html>
<?php 
if(isset($_POST['sub']))
{
    $u_name=$_POST['u_name'];
    $u_password=$_POST['u_password'];
    include ("connection.php");
    $w="select * from signup";
    $b=mysql_query($w) or die(mysql_error()."in query $w");
    while($row=mysql_fetch_array($b))
    {
     $a=$row['email_id'];
     $u=$row['password'];
    }
if ($u_name==$a && $u_password==$u)
{
    $_SESSION['loggedin']=true;
    $_SESSION['user_email']=$_POST['u_name'];
    $_SESSION['user_pass']=$_POST['u_password'];
    echo '<meta http-equiv="refresh" content="0; url=homepage.php">';
}
else
{
    echo "Your username or password is incorrect.Please try again";
}
}
?>
4

1 に答える 1

1
<?php 
if(isset($_POST['sub']))
{
    $u_name=$_POST['u_name'];
    $u_password=$_POST['u_password'];
    include ("connection.php");
    $w="select * from signup where email_id = '$u_name' AND password = '$u_password'";
    $b=mysql_query($w) or die(mysql_error()."in query $w");
    $num_rows = mysql_num_rows($b);
    if($num_rows > 0)
    {
        $row=mysql_fetch_array($b);
        $_SESSION['loggedin']=true;
        $_SESSION['user_email']=$_POST['u_name'];
        $_SESSION['user_pass']=$_POST['u_password'];
        echo '<meta http-equiv="refresh" content="0; url=homepage.php">';
    }
    else
    {
         echo "Your username or password is incorrect.Please try again";
    }
}
?>
于 2013-09-21T09:08:42.747 に答える