我只是想在数据库中选择一个特定的行,但由于某种原因,我的结果集一直显示为空。但是,当我在 HeidiSQL 中运行查询时,我得到结果。
我被难住了。我没有看到我的代码有什么特别的问题,我已经尝试回显$mysqli->error
,但我没有任何错误。我还在代码中添加了ini_set('display_errors', 'On'); error_reporting(E_ALL);
。
$id =$_GET['sysid'];
$system_info = $mysqli->prepare("SELECT * FROM systems WHERE systems.id = ?");
$system_info->bind_param("i", $id);
$system_info->execute();
$system_info->store_result();
$system_info->bind_result($system_id, $system_name, $system_img);
您需要
fetch
结果。
$id = $_GET['sysid'];
$system_info = $mysqli->prepare("SELECT * FROM systems WHERE systems.id = ?");
$system_info->bind_param("i", $id);
$system_info->execute();
$system_info->bind_result($system_id, $system_name, $system_img);
$system_info->fetch();
然后你可以使用 $system_id
、 $system_name
和 $system_img
。
store_result
将返回一个mysqli_result
对象;它忽略bind_result
。
$id = $_GET['sysid'];
$system_info = $mysqli->prepare("SELECT * FROM systems WHERE systems.id = ?");
$system_info->bind_param("i", $id);
$system_info->execute();
$result = $system_info->store_result();
list($system_id, $system_name, $system_img) = $result->fetch_array(MYSQLI_NUM);