1

ユーザーのリストを含むusersというテーブルを使用してmysql dbに接続するログインphpスクリプトを作成しています。空のセットまたは mysql エラーのように見えます。

接続エラー エコーとクエリ ダイ エコーを含めましたが、スクリプトは後者のエラーをエコーし​​て、クエリ文字列を取得しています。この正確なクエリを phpMyAdmin で実行すると、期待どおりの結果が得られます (ユーザーが返されます)。

なぜそれは死にかけているのですか?

$cxn は、この投稿をこのページに呼び出すログイン ページで定義されました

$pass = addslashes($_POST['password']);
$email = addslashes($_POST['username']);
$pw = md5($_POST['password']);


$query = "SELECT * FROM `users` WHERE (`user_email`='$email' AND `user_pass`='$pw')" ;


if (mysqli_connect_errno()){         
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}                               

$result = mysqli_query($cxn,$query) or die(mysqli_error($cxn)."Query= ".$query);

最初のバージョンを残しました。これは、同じ結果を持つ現在の化身です。

    <?php

    $email = ($_POST['username']);
    $pw = md5($_POST['password']);

    $query = "SELECT * FROM `users` WHERE (`user_email`='$email' AND `user_pass`='$pw')" ;

    if (mysqli_connect_errno($cxn)){          //remove later
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }                                  //to here

    $result = mysqli_query($cxn,$query) or die(mysqli_error($cxn)."Query=".$query);

    echo '<hr>';
    echo $result;
    while($row = mysql_fetch_array($result)){
        echo $row['user_email'];
        echo '<hr>';
        echo $row['user_pass'];
        echo '<hr>';
        echo $row['user_fname'];
        echo '<hr>';
    }
?>
4

2 に答える 2