Php mysqli->;查询不返回任何内容

Php mysqli->;查询不返回任何内容,php,mysql,mysqli,Php,Mysql,Mysqli,我在MySQLi上遇到了麻烦。我已经习惯了老的mysql_查询,所以我相信这是一个非常愚蠢的问题。 我无法根据他们输入的电子邮件从数据库返回ID 以下是查询代码: $userid = $mysqli->query("SELECT id FROM client WHERE email = $email"); 回显$userid不会返回任何内容 我是MySQLi的新手,所以这可能很简单 谢谢。: 返回值 失败时返回FALSE。为了成功地选择、显示、描述或解释查询,mysqli_query()

我在MySQLi上遇到了麻烦。我已经习惯了老的mysql_查询,所以我相信这是一个非常愚蠢的问题。 我无法根据他们输入的电子邮件从数据库返回ID

以下是查询代码:

$userid = $mysqli->query("SELECT id FROM client WHERE email = $email");
回显$userid不会返回任何内容

我是MySQLi的新手,所以这可能很简单

谢谢。

: 返回值 失败时返回FALSE。为了成功地选择、显示、描述或解释查询,mysqli_query()将返回一个mysqli_结果对象。对于其他成功的查询,mysqli_query()将返回TRUE

因此,结果应该是
TRUE
FALSE
或a,而不是您期望的查询的实际结果

您需要这样做:

$result = $mysqli->query("SELECT id FROM client WHERE email = $email");
if($result === FALSE) {
    die("Uh oh something went wrong");
}

然后使用类似的方法。

如果它没有回声,可能是因为该值为
false
,这意味着存在错误。改为执行
var\u dump
。(考虑到固有的语法错误,一个错误事实上是不可避免的:字符串不会被引用。)这是非常基本的,每个手册和教程都对此进行了解释。你真的应该从这些开始,我们在这里提供的任何帮助都只是毫无意义地重复这些观点!
$query = $mysqli->query("SELECT id FROM client WHERE email = '$email'");
$row = $query->fetch_array();
print_r($row);