使用PHP在MySQL中查找“id”行

时间:2014-03-29 18:11:05

标签: php mysql database forms

我的登录脚本中有一部分应该找到尝试登录的用户的“id”(“id”是MySQL表中的一列)。相反,它给出了这个输出:

Array ( [id] => id ) 1

我用过print_r();找到这个输出,但我不计划在开发期的剩余时间内使用它。

我想使用用户的“id”来查找其余的数据库内容,如有必要,请回复它。

//get id of user  logging in

$get_id = mysql_query("SELECT 'id' from users WHERE username = '{$username_login}'") or die(mysql_error());

$id = print_r(mysql_fetch_assoc($get_id));

// test echo for id

echo $id;

在此脚本中,$ username_login在脚本的前面定义,此处未显示。

我所拥有的测试用户的“id”是1,如图所示是phpMyAdmin。

顺便说一下,当我在没有print_r的情况下测试时,它回显了“数组”(显然没有引号)。

感谢帮助。

-ethan17458

3 个答案:

答案 0 :(得分:1)

$get_id = mysql_query("SELECT `id` from users WHERE username = '{$username_login}'") or die(mysql_error());

$id = mysql_fetch_assoc($get_id);

echo $id['id'];

答案 1 :(得分:1)

永远不要在数据库列名或表名中使用引号('")。你可以使用反引号(`)

更改此行:

mysql_query("SELECT 'id' from users WHERE username = '{$username_login}'") or die(mysql_error());

为:

mysql_query("SELECT `id` from users WHERE username = '{$username_login}'") or die(mysql_error());

答案 2 :(得分:1)

  • 当您在mysql查询中列出时,应将其放在``中,而不是''""
  • 在mysql查询中列出时,应将它们放在''"",而不是`` 如果值数字,则不必将它们放在引号中。