0
在经过几小时的各种脚本示例并试用几乎所有的东西之后,我发现在寻找答案时这是远程可以理解的,我再一次处于更智能的摆布之中。我想要做的就是从用户的数据库表中返回一个名称。这太难了,对我来说似乎是YEP。有人请直接给我。 我已经排序了所有的错误,现在我什么都没有了,我想呢,问题是在返回结果语句中。这里是我的代码:不能从预准备声明中返回结果
<?php
//connect to database
$mysqli = new mysqli('localhost', 'fiona', 'imB04', 'Org_db');
// check connection
if (mysqli_connect_errno()) {
echo "Connect failed: " . mysqli_connect_errno(); exit();
}
//Prepared statement, bind and execute
if (!$stmt = $mysqli->prepare("SELECT `name` FROM users WHERE name = ?")) {
echo "Prepare failed: (" . $mysqli->errno . ") " . $mysqli->error;
}
//bind parametres
if (!$stmt->bind_param("i", $name)) {
echo "Binding param failed: (" . $stmt->errno . ") " . $stmt->error;
//execute query or return error
}
if (!$stmt->execute()) {
echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
}
//bind result variable
if (!$stmt->bind_result($name)) {
echo "bind result failed: (" . $stmt->errno . ") " . $stmt->error;
}
if ($result = $mysqli->prepare("SELECT `name` FROM users WHERE name = ?")) {
while ($row = $result->fetch_array())
{
echo $result['name'];
}
}
//Close statement
$stmt -> close();
//Close connection
$mysqli -> close();
?>
嗯,你为什么不摆脱这个混乱,并尝试从非常**手册页* *清洁*例如** –
我使用手册的例子是名称=(NULL)显然我只是不能正确地得到它 – user2042111
无论如何,你需要尝试手动的例子。仅仅因为你目前的表现非常不一致。为什么你运行查询*两次*? –