我的插入查询是:
function CreateResult($init_quizz_id,$result_title,$result_image,$result_description) {
$sql = "INSERT INTO result_quizz(init_quizz_id,result_title
,result_image,result_description)
VALUES('$init_quizz_id','$result_title','$result_image','$result_description')";
if ( $GLOBALS['conn']->query($sql) === TRUE) {
echo "Result Added";
$sql2 = "UPDATE 'init_quizz' SET 'results_count' = 'results_count' +1 WHERE 'quizz_id' = '$init_quizz_id'";
$GLOBALS['conn']->query($sql2);
if (!$GLOBALS['conn']->query($sql2)) {
echo ' NO UPDATE';
}
}
}
让我说我有问题的init_quizz表,另一个表quizz_results。我想在添加结果时增加每个quizz的results_count。我的结果表也是一个init_quizz_id,它是quizz的实际ID。 我是初学者所以我正在寻找任何解决方案。 感谢
编辑:修复第二个查询(sql2)上的错误并获取“未更新”消息。好像我的第二个查询完全错误。有什么想法吗?
答案 0 :(得分:0)
@barmar是对的,我为我的计数器找到了一个更好的解决方案,而不是UPDATE,我只是从结果表中返回受影响的行quizz_id。
function GetResultsCountByID($quizz_id) {
global $conn;
$sql = "SELECT * FROM result_quizz WHERE init_quizz_id = '$quizz_id'";
$result = $conn->query($sql);
return mysqli_affected_rows($conn);
}