我正试图抓住mysqli
,但与现在贬值的mysql
相比,这是一场斗争。到目前为止,使用旧方法,我已经能够在关联数组中获取有关我的表的信息。我正在尝试形成一份准备好的陈述并echo
id
号码。我还希望能够打印已被绑定的整个sql
语句,但看起来我甚至无法从单个id
语句中回显SELECT
个数字,它是目前无从谈起。
$db = new mysqli('xxx', 'xx', 'xx', 'xxxx');
$sql = "SELECT user_id, name FROM users WHERE name=?"
$statement = $db -> prepare($sql);
$statement -> bind_param("s", "Emma");
$statement -> execute();
$statement -> bind_result($id, $name);
$output = $statement -> fetch();
echo $output -> $id . " " . $name;
我似乎迷失在bind_result
行。我想如果statement
是一个对象,那么我应该能够以我设计的形式echo
这些对象?当我刷新页面时,我什么都没得到。我的表中有2个条目,其中1个条目具有上面使用的名称字符串。
答案 0 :(得分:0)
你觉得太复杂了。试试这个:
$db = new mysqli('xxx', 'xx', 'xx', 'xxxx');
$sql = "SELECT user_id, name FROM users WHERE name=?";
$statement = $db->prepare($sql);
$statement->bind_param("s", "Emma");
$statement->execute();
$statement->bind_result($id, $name);
while ($statement->fetch()) {
echo $id . " " . $name;
}
bind_result()
方法需要注意,对于您执行的每个$statement->fetch()
,您会在变量$id
和$name
中获得新值。
你应该看看这些方法的好documentation。