0

私はmysql接続とその動作を持っています。接続が完了し、mysqlの結果は問題ありません。パネルにログインしようとしていますが、「パスワードが正しくありません」/Kullanıcıadınızveyaşifrenizyanlışを指定するたびに。どうすればこれを修正できますか?

if(@$_GET['selection'] == 'verification' ) 
    {
        $myusername=$_POST['myusername'];
        $mypassword=$_POST['mypassword'];
        $tbl_name="kullanicilar";
        $myusername = stripslashes($myusername);
        $mypassword = stripslashes($mypassword);
        $myusername = mysql_real_escape_string($myusername);
        $mypassword = mysql_real_escape_string($mypassword);

        $sql="SELECT * FROM kullanicilar WHERE kullaniciadi='$myusername' and sifre='$mypassword'";
        $result=@mysql_query($sql);
        $count=@mysql_num_rows($result);
        if (@mysql_num_rows($result) != 0)
        {
            session_register("myusername");
            session_register("mypassword");
            header("location:index.php?page=giris&lang=tr&selection=verified");
        }
        else 
        {
            echo "Kullanici adiniz veya sifreniz yanlis. <b>$count</b>";
        }
    }
4

1 に答える 1

0

あなたはいくつかのことをする必要があります:

  1. mysql_num_rows関数を再度呼び出す代わりに、「if」条件で$countを使用します。各mysql関数呼び出しは、回避したい費用です。

  2. 「stripslashes」行にコメントを付けてコードを試してください。

  3. エコーしてクエリを取得します。次に、このスクリプトを使用せずに(SQLYogやphpMyAdminなどで)クエリを直接実行し、結果が得られるかどうかを確認します。

于 2012-09-20T13:21:28.733 に答える