-1

我在连续选择一个字段时遇到了一些困难。也许有人可以指出我正确的方向来阅读一些适当的文档,我对此很陌生。

我有一个名为 users 的表,其中有一行用户名设置为 ryanjay。我正在尝试从此行中选择密码。

这就是我现在所拥有的,我收到一个错误:

“字段列表”中的未知列“密码”

这是我的代码

$loggin_user = $_COOKIE['username'];

$query = "SELECT password FROM users WHERE username = $loggin_user";
$result = mysql_query($query) or die($query."<br/><br/>".mysql_error());
$password = mysql_result($result, 0);
echo $password;

对于这个问题,密码是“密码”。回显 $password 时,我应该看到“密码”。但什么都没有。

我能够写入数据库和所有内容。我还包括一个 db.php,其中包含用于连接的数据库信息。

任何帮助都会很棒。

4

3 回答 3

4

尝试

$loggin_user = mysql_real_escape_string($_COOKIE['username']);
$query = "SELECT `password` FROM `users` WHERE `username` = '$loggin_user'";
$result = mysql_query($query) or die($query."<br/><br/>".mysql_error());
$password = mysql_result($result, 0);
echo $password;
于 2013-03-29T23:25:30.943 回答
1

It is telling you that there is no column called "password" in the table users.

于 2013-03-29T23:25:42.993 回答
0

You need single quotes ' for string columns. Otherwise SQL thinks, it's a table name. Try this:

$query = "SELECT `password` FROM `users` WHERE `username` = '".$loggin_user."' ";

Don't forget to escape your variables to prevent SQL injections. Also it's more pretty to use backticks in MySQL for table/column names to avoid problems with reserved names.

于 2013-03-29T23:26:23.850 回答