我想在页面上以文本形式输出查询结果,这样我就能看到它的样子。问题是,如果我像下面所做的那样使用回声,甚至使用打印,我会收到错误。
我收到的错误是无法将对象转换为字符串
我的问题是在页面上输出查询结果的最佳方法是什么?
以下是代码:
$answersql = "INSERT INTO Answer (Answer)
VALUES (?)";
if (!$insertanswer = $mysqli->prepare($answersql)) {
// Handle errors with prepare operation here
}
$insertanswer->bind_param("s", $_POST['value'][$i]);
//$insertanswer->execute();
echo $insertanswer;
if ($insertanswer->errno) {
// Handle query error here
}
$insertanswer->close();
答案 0 :(得分:1)
您没有输出查询结果。您似乎正在尝试输出查询本身。
但是,$insertanswer
是mysqli_statement的一个实例。此类似乎不提供对查询的访问权。
这就是为什么你不能把它打印成字符串。它不是一个字符串。
答案 1 :(得分:0)
您可以尝试使用字符串输入它。例如,你声明一个变量来保存结果转换,比如$ answersql =" INSERT INTO Answer((string)Answer)) 价值观(?)&#34 ;; 或者你可以输入指定的变量: (字符串)$ answersql =" INSERT INTO Answer(Answer) 价值观(?)&#34 ;; 取决于您需要结果的方式或位置。
答案 2 :(得分:0)
情侣用品。在绑定时,您需要先将$ _POST赋值给变量。我看到你在那里有一个柜台,但是看不到你在哪里迭代任何东西。我假设你可以将$ _POST ['value']分配给一个scale变量。
$input = $_POST['value'];
如果在db表列上设置了auto_increment属性,INSERT将返回true或false以及ID。如果是,则可以使用
$insertid = $insertanswer->insert_id;
但是,如果您编写语句的方式,它将不会返回任何值。只是true或false和id(如果设置了auto_increment属性)。