这段代码应该是非常简单的基本编码,但它不起作用。问题出在INSERT / UPDATE代码中,因为如果我删除那些并且只是回显if / else代码中的简单文本,一切正常。
这是我的代码,它提供了HTTP ERROR 500。
$sql2 = mysqli_query($mysqli, "SELECT * FROM koppel WHERE userid = ".$_GET['userid']." AND msgid = ".$_GET['msgid']."");
$row = mysqli_fetch_assoc($sql2);
$check = $_GET['check'];
$msgid = $_GET['msgid'];
$userid = $_GET['userid'];
$ja = 'ja';
$nee = 'nee';
$tabel_content = $row['check'];
$tabel_id = $row['id'];
if ($tabel_content == $ja){
$stmt = $mysqli->prepare("UPDATE koppel SET check = ? WHERE id = ?");
$stmt->bind_param('si',
$nee,
$tabel_id);
$stmt->execute();
$stmt->close();
} elseif ($tabel_content == $nee){
$stmt = $mysqli->prepare("UPDATE koppel SET check = ? WHERE id = ?");
$stmt->bind_param('si',
$ja,
$tabel_id);
$stmt->execute();
$stmt->close();
} else {
$stmt = $mysqli->prepare("INSERT INTO koppel(userid,
msgid,check) VALUES (?, ?, ?)");
$stmt->bind_param('iis', $userid,
$msgid,
$check);
$stmt->execute();
$stmt->close();
}
我错过了什么?
答案 0 :(得分:0)
我没有看到任何错误,但请确保$ mysqli是与您的数据库有效的mysqli连接。
要调试您的问题,请尝试检查服务器错误日志(它们将显示500错误的原因,以及在哪行中)或尝试删除代码的每个部分,直到您确切了解哪条线路出现故障。
您也可以将所有“执行”和“关闭”调用移到if / elseif / else结构之下,因为它总是被执行,以避免重复代码。
“tabel”也应拼写为“table”。