Php mysqli返回空值

Php mysqli返回空值,php,mysqli,Php,Mysqli,我试图从我的数据库中获取数据,但得到的只是空值 我知道查询不是空的,因为我从if($stmt->num\u rows>0)中获取值 代码 当我在phpmyadmin上运行查询时,我也得到了很好的结果 这是我的代码,感谢您的帮助: $sql = "SELECT register_date FROM personal WHERE user_id = ?"; $stmt = $mysqli->prepare($sql) or trigger_error($mysqli->err

我试图从我的数据库中获取数据,但得到的只是空值

我知道查询不是空的,因为我从
if($stmt->num\u rows>0)中获取值

代码

当我在phpmyadmin上运行查询时,我也得到了很好的结果

这是我的代码,感谢您的帮助:

$sql = "SELECT register_date FROM personal WHERE user_id = ?"; 

    $stmt = $mysqli->prepare($sql) or trigger_error($mysqli->error."[$sql]");

    $stmt->bind_param('s', $user_id);

    $user_id = $_GET['user_id'];

    $stmt->execute();

    $stmt->store_result();

    $stmt->bind_result($register_date);

    if($stmt->num_rows > 0)
    {

         $response["date"] = $register_date;
         $response["success"] = 1;
           // echoing JSON response
           echo json_encode($response);

    }

    else
    {
          $response["success"] = 0;
          echo json_encode($response);
    }

您的代码有点混乱,您需要在使用变量之前定义变量(在本例中为$user\u id)

我建议转到PDO而不是使用MySQLi。

试试看

$stmt->bind_result($register_date);
$stmt->execute();
$stmt->store_result();
$stmt->fetch();
echo $register_date;

请阅读doc

仍然无法使您的代码正常工作?。不熟悉MySQLi,但您不需要在bind_参数之前设置$user_id吗?除了fetch,您还需要关闭语句。@AlexP这一条完全没有必要,我忘记了
$stmt->fetch()。谢谢你的帮助