0

我有一个包含 3 列的数据库,“ID”、“用户名”、“密码”。我对 SQL 很陌生(仍在学习 :P ),而且,我无法让我的想法发挥作用。这适用于 Android 应用程序。我已经登录了,你输入了登录数据,我已经安排好了一切工作,但是:

我需要一个 SQL 查询,仅当用户名和密码匹配时才能检索帐户 ID。这是我到目前为止:

<?php
    $username = $_POST['username'];
    $password = $_POST['password'];
    $hostname = "-----";
    $dbuser   = '-----';
    $dbpass   = '-----';
    $dbname   = '-----';

    //connection to the database
    $dbhandle = mysql_connect($hostname, $dbuser, $dbpass) or die("Unable to connect to MySQL " . \mysql_error() . "<br>");


    //select db

    mysql_select_db($dbname, $dbhandle) or die("Unable to connect to DB: " . \mysql_error() . "<br>");
    $result = mysql_query("SELECT usr_id IF (username = '$username' AND password = '$password') FROM people") or die("Error: " . mysql_error());
    echo $result;
?>

我知道谷歌是我的朋友,但是当我试图找出它时,这些参考资料只是给了我不相关的信息,或者至少与这个案例无关。

所以,无论如何,感谢您的宝贵时间!

4

3 回答 3

1

尝试使用 WHERE 而不是 IF,所以:

"SELECT usr_id FROM people WHERE username = '".$username."' AND password = '".$password."'"
于 2013-05-10T01:34:40.020 回答
0

使用WHERE子句过滤此类条件,

SELECT usr_id 
FROM people
WHERE username = '$username' AND password = '$password'
于 2013-05-10T01:32:47.050 回答
0
$result = mysql_query("SELECT usr_id FROM people WHERE username = '$username' AND password = '$password');
 $result_array=mysql_fetch_assoc($result);
echo $result_array['usr_id'];
于 2013-05-10T01:35:34.180 回答