我有一个函数,如果用户输入正确答案,分数应该增加。验证函数工作正常,但分数不递增。最初,我将其定义为 0,然后它应该根据答案递增,但它不起作用。
$score =0;
function checkscore ($n, $ans)
{
global $score;
$arr = array('a', 'd');
if (($n == 1) && ($ans == (count(array_intersect($arr, $_POST['a'])) == count($arr))))
{
$score++;
}
if (($n == 2) && ($ans == ($_POST['b'] == 'a')))
{
$score++;
}
if (($n == 3) && ($ans == "div[id='serenade']"))
{
$score++;
}
if (($n == 4) && ($ans != (($_POST['d1'] == 'B') && ($_POST['d2'] == 'C') && ($_POST['d3'] == 'A'))))
{
$score++;
}
return $score;
}
这是函数。有人请帮助我。
如果
$n
为 3 或 4,则返回 1,否则为 0。前两个条件将始终false
,而第三个条件将在$n==3
时true
,第四个条件将在$n==4
时。
所以它偶尔会增加,但最多只能增加 1...