如何將sql查詢存儲到變量,以將1添加到其當前值。我已經有一個代碼,但它不會將1添加到選擇查詢['eCorrect']中的當前值,而是在提交表單後結果爲2。它顯示這個錯誤mysqli_result類的對象無法轉換爲int。我已將'eCorrect'字段設置爲數據類型INT。我不知道我的錯誤在哪裏,請提前謝謝。SQL查詢存儲在一個變量中,並使用該變量來添加一些東西,使用PHP
<form method="post" action="elQ2.php">
<p>Question: sample question sample question sample question sample question</p>
<input type="radio" name="Ctwo" value="wrong">Choice A<br>
<input type="radio" name="Ctwo" value="wrong">Choice B<br>
<input type="radio" name="Ctwo" value="correct">Choice C<br>
<input type="radio" name="Ctwo" value="wrong">Choice D<br>
<input type="submit" name="submit" value="Submit" class="pull-right">
</form>
</div>
</div>
這是我的PHP代碼
<?php
$correctResult = $db->query("SELECT eCorrect FROM elearn WHERE eID=1");
$wrongResult = $db->query("SELECT eWrong FROM elearn WHERE eID=1");
$addC = $correctResult;
$addW = $wrongResult;
if(isset($_POST['submit'])) {
if(!empty($_POST['Ctwo'])){
if($_POST['Ctwo']=="correct") {
$eAns = $_POST['Ctwo'];
$eAns= $addC + 1 ;
if($update = $db->query(" UPDATE elearn SET eCorrect = '".$eAns."' WHERE eID=1 ")) {
}else{
die($db->error);
}
echo "Correct Answer";
}else{
//Wrong answer
$eAns = $_POST['Ctwo'];
$eAns = $addW + 1 ;
if($update = $db->query(" UPDATE elearn SET eWrong = '".$eAns."' WHERE eID=1 ")) {
}else{
die($db->error);
}
echo "Wrong answer";
}
} else{
echo "You must choose an answer";
}
}
?>
如果你只是想通過一個遞增它,確實'UPDATE elearn SET eCorrect = eCorrect + 1,其中的eID = 1'工作?您不需要選擇值,將其加1並寫回,只能使用SQL來完成此操作。 – Drudge
感謝它的工作。 –