Javascript ErrorException未定义索引:php中的下一个\u id
我创建了一个结合sql、php和html的测验网站。这些问题是从数据库中提取的。下面是我的*.js代码和*.php代码Javascript ErrorException未定义索引:php中的下一个\u id,javascript,php,html,sql,ajax,Javascript,Php,Html,Sql,Ajax,我创建了一个结合sql、php和html的测验网站。这些问题是从数据库中提取的。下面是我的*.js代码和*.php代码 $(文档).ready(函数(){ $('body')。在('click','input[type=“radio”]”上,函数(){ var curr_id=$('.question').data('nextQuestion'); var answer1=$(“#radio1”)。是(“:选中”); var answer2=$(“#radio2”)。是(“:选中”); va
$(文档).ready(函数(){
$('body')。在('click','input[type=“radio”]”上,函数(){
var curr_id=$('.question').data('nextQuestion');
var answer1=$(“#radio1”)。是(“:选中”);
var answer2=$(“#radio2”)。是(“:选中”);
var answer3=$(“#radio3”)。是(“:选中”);
var answer4=$(“#radio4”)。是(“:选中”);
获取正确答案(当前id、答案1、答案2、答案3、答案4);
setTimeout(getQuestion.bind(this,curr_id,answer1,answer2,answer3,answer4),1000);
});
函数getQuestion(curr_id,answer1=false,answer2=false,answer3=false,answer4=false){
控制台日志(当前id);
$.post(“ajax.php”,
{
下一个id:parseInt(当前id)+1,
回答1:回答1,
回答2:回答2,
回答三:回答三,
回答4:回答4,
},
功能(数据、状态){
$(“#容器(用于_问题”).html(数据);
});
}
函数getCorrectAnswer(当前id,应答1=false,应答2=false,应答3=false,应答4=false){
$.post(“ajax\u get\u correct\u answer.php”,
{
下一个id:parseInt(当前id),
回答1:回答1,
回答2:回答2,
回答三:回答三,
回答4:回答4,
},
功能(数据、状态){
$(“#容器(用于_问题”).html(数据);
});
}
问题(-1);
});
替换以下内容
if($_POST['next_id'] == 0){
// reset to default
$_SESSION["correct_score"] = 0;
$_SESSION["not_correct_score"] = 0;
}
到
//检查是否在来自ajax的Post中设置了next_id。如果设置重置为默认值(正确的分数,而不是正确的分数)
你可以使用下面的建议
//在顶部声明变量
$next_id=0;
if(isset($_POST['next_id']) && $_POST['next_id'] != 0){
$next_id=$_POST['next_id'];
}
稍后,如果您看到
$\u POST['next\u id']
替换为$next\u id
第一次检查是否设置了下一个id($\u POST['next\u id']),请检查$\u POST数组的内容,即调用var\u dump($\u POST);您还可以在浏览器开发人员工具的“网络”选项卡中检查请求正文。您在请求后的“参数”中看到“下一个\u id”了吗?但此行显示的下一个\u id未定义“如果”($number_of_all_questions@kingkhan我给了他答案哪里出了问题,他可以根据自己的需要修改代码。编写代码的方法有很多。你可以完全按照自己的方式编辑代码吗?我已经按照你说的方式编辑了所有内容。问题已显示,但不会转移到下一个问题。你认为我应该在我的ja中更改任何内容吗问题中的vascript代码。你能检查一下吗
$next_id=0;
if(isset($_POST['next_id']) && $_POST['next_id'] != 0){
$next_id=$_POST['next_id'];
}