mysql_fetch_assoc()给了我错误的值

jus*_*ser 1 php mysql

当我进行查询时,我可以进行密码检查和密码,它可以工作.然而,当我尝试提取名为id的行id时,它应该是其他东西时返回0.当我以相同的方式打印密码时,它打印两个数字而不是我希望的字符串.

我或多或少是PHP的初学者,但也许有人可以看到我的代码有什么问题?

$sql = 'SELECT pass FROM tbl_user WHERE email = "'.$email.'" LIMIT 1 ;';
$selection = mysql_query($sql);

$r = mysql_fetch_assoc($selection);
$user_id = $r['id'];
print "user id is: " + $r['id'];
print "user id is: " + $r['pass'];
Run Code Online (Sandbox Code Playgroud)

Joe*_*Joe 5

你只是SELECT输入密码.将您的查询更改为

$sql = 'SELECT id, pass FROM tbl_user WHERE email = "'.$email.'" LIMIT 1 ;';
Run Code Online (Sandbox Code Playgroud)

关于打印,而不是使用print,使用echo.另外,+使用.将字符串连接在一起:

echo "user id is: " . $r['id'];
echo "user id is: " . $r['pass'];
Run Code Online (Sandbox Code Playgroud)