MYSQLi bind_result返回null

use*_*837 2 php mysql sql mysqli prepared-statement

我试图输出我在查询中从数据库中获取的变量,但没有返回任何内容.使用MYSQLi编写的语句.

请参阅以下代码:

$stmt = $con->prepare("SELECT first_name, last_name FROM transactions WHERE order_id = ?");
$stmt->bind_param('i', $order_id);
$stmt->execute(); 
$stmt->store_result();
$stmt->bind_result($first_name, $last_name);
$stmt->close();


// Output review live to page 
echo $first_name;
Run Code Online (Sandbox Code Playgroud)

我看不出我错在哪里?PS我是准备好的陈述的新手,所以请放轻松我吧!

ech*_*_Me 7

你忘记了获取结果的行.fetch().

试试看:

  $stmt->bind_result($first_name, $last_name);
  $stmt->fetch();  // ----- > you forget that line to fetch results.
  $stmt->close();
Run Code Online (Sandbox Code Playgroud)