为什么最后一个正确答案仍然有效?


why does the last correct answer still work?

这是一个测验网站,但是当我提交答案和正确的时候,会弹出一个新的问题,但正确的答案和最后一个正确的答案是有效的(最后一个正确的答案是无限的,直到新的最后一个答案)我试了几个小时来修复它,看到没有解决方案…最后一个正确答案不适用于新问题

var right = 0
function start(){
	var name = $('input#answer').val()
	if ($.trim(name) != ''){
		$.post('ajax/name.php', {name: name}, function(data){
			$('#correctbox').text(data)
		if (name == data){
			rightfunc()
			rand()
		}else{
			rand()
		}
		} )
	}
}
function rand(){
		$.post('ajax/test.php', {name: name}, function(data){
			$('#questionsbox').text(data)
			document.getElementById("answerswer").value = '';
		} )
}
function rightfunc(){
	right = right + 1
	rightbox.innerHTML = "<b>Correct | "+right+"</b>"
}
<?php
if (isset($_POST['name']) === true && empty($_POST['name']) === false){
	require '../db/connect.php';
	mysql_set_charset('utf8');
	$name = mysql_real_escape_string(strip_tags(addslashes(trim($_POST['name']))));
	$query = ("SELECT *
	FROM japanese 
	WHERE Romanji = '$name'
	")or die(mysql_error());
	
	$response = mysql_query($query);
   
	if($response === false){
		die(mysql_error());
	}
	while($row = mysql_fetch_array($response)){
		if($name == $row['Romanji']){
			echo ($row['Romanji']);
		}else{
			echo ('Name not found');
		}
	}
}
?>

当你给出正确答案时,不要清空input#answer:

.post('ajax/name.php', {name: name}, function(data){
            $('#correctbox').text(data);
            //add next line so you can remove it from rand()
            document.getElementById("answerswer").value = '';
        if (name == data){
            rightfunc()
            rand()
        }else{
            rand()
        }
        } )

另一件事是为什么你总是发送相同的查询数据库?如果你的问题改变了,你的问题应该不会变吧?