我一整天都在乱砍,只有成功的“更新”才能展示出来。我是使用MySQLI的新手,似乎遇到了脚本的几个问题。
志愿者使用html表单输入他们已经在数据库中的电子邮件地址。然后,数据库显示其计划信息,并将“已确认”列从(默认)“否”更新为“是”。
更新在数据库中显示为已确认为“YES”,但输出未在页面本身上回显。
这是PHP:http://pastebin.com/KSPGuuae
Errors: UPDATE FAILED: () object(mysqli_stmt)#2 (0) { } select FAILED: () object(mysqli_stmt)#3 (0) { } Fatal error: Call to undefined method mysqli_stmt::get_result() in /home/content/79/6007279/html/summerfest/display.php on line 119: 119: $result = $stmt->get_result();
答案 0 :(得分:1)
在尝试获取结果之前,您忘记运行$stmt->execute()
。
此外,get_result()
仅在PHP 5.3中引入
对于以前的PHP版本,您应该使用此查询:
SELECT agreeName, position, shift_times, confirmed FROM volConfirm ... etc
然后在PHP中:
// bind result columns
$stmt->bind_result($agreeName, $position, $shift_times, $confirmed);
while ($stmt->fetch()) {
// use $agreeName, $position, etc.
}
我更喜欢PDO的工作方式,尽管PHP 5.3至少mysqli更可行。