これは変数をエコーするphpページです$correct
。その初期値は0
です。値の増分とともに変化しますが、jquery ajaxメソッドを使用して他のページにエコーした後にこの値をロードすると0
、増分値のみが返されます。
<?php
$i=1;
while($i<=10) {
$answer="answer_".$i;
${"answer_$i"}=$_POST[$answer];
$i++;
}
$correct=0;
if($answer_1=="a")
$correct=$correct+10;
else {
if($answer_1=="b" || $answer_1=="c" || $answer_1=="d")
$correct=$correct-10;
}
if($answer_2=="a")
$correct=$correct+10;
else {
if($answer_2=="b" || $answer_2=="c" || $answer_2=="d")
$correct=$correct-10;
}
if($answer_3=="a")
$correct=$correct+10;
else {
if($answer_3=="b" || $answer_3=="c" || $answer_3=="d")
$correct=$correct-10;
}
if($answer_4=="a")
$correct=$correct+10;
else
{ if($answer_4=="b" || $answer_4=="c" || $answer_4=="d")
$correct=$correct-10;
}
if($answer_5=="a")
$correct=$correct+10;
else
{ if($answer_5=="b" || $answer_5=="c" || $answer_5=="d")
$correct=$correct-10;
}
if($answer_6=="a")
$correct=$correct+10;
else
{ if($answer_6=="b" || $answer_6=="c" || $answer_6=="d")
$correct=$correct-10;
}
if($answer_7=="a")
$correct=$correct+10;
else
{ if($answer_7=="b" || $answer_7=="c" || $answer_7=="d")
$correct=$correct-10;
}
if($answer_8=="a")
$correct=$correct+10;
else {
if($answer_8=="b" || $answer_8=="c" || $answer_8=="d")
$correct=$correct-10;
}
if($answer_9=="a")
$correct=$correct+10;
else
{
if($answer_9=="b" || $answer_9=="c" || $answer_9=="d")
$correct=$correct-10;
}
if($answer_10=="a")
$correct=$correct+10;
else
{
if($answer_10=="b" || $answer_10=="c" || $answer_10=="d")
$correct=$correct-10;
}
echo "$correct";
?>
これは、この変数にアクセスする他のページのスクリプトですが、phpページで変数の値が変更されています$correct
が、常に結果になりますか?0
どうすればこれを修正できますか?
<script>
$(function(){
$('form').submit(function(event){
event.preventDefault();
$.ajax({
url:"results.php",
type:"POST",
success:function(result){
console.log(result);
$('#results').html("<p>"+result+"</p>");
}
});
});
});
</script>