0
我需要帮助发布一个问题到数据库的答案。但是,我遇到了测试问题。我希望有人能检查一切正确。我不确定表单(View)中的发布操作是否正确。发布显示404页面的结果未找到。我不是,如果它的URL或服务器。codeigniter:发布到数据库
我需要帮助发布一个问题到数据库的答案。但是,我遇到了测试问题。我希望有人能检查一切正确。我不确定表单(View)中的发布操作是否正确。发布显示404页面的结果未找到。我不是,如果它的URL或服务器。codeigniter:发布到数据库
希望这将有助于
if($_POST){
$question = $this->input->post('question_add');
$answer1 = $this->input->post('answer_01');
$answer2 = $this->input->post('answer_02');
$answer3 = $this->input->post('answer_03');
$answercorrect = $this->input->post('answer_correct');
$this->quiz->addQuestion($question, $answer1, $answer2, $answer3, $answercorrect);
redirect(base_url().'add');//redirect to your form
}else{
$this->load->view('form');//your view here
}
希望这会工作。
最后从模型addQuestion()返回1。
function addQuestion($question,$answer1, $answer2, $answer3, $answercorrect) {
//add questions
$data = array (
'quizid' => 5,
'questions' => $question,
'answerid' => '4'
);
$this->db->insert('questions', $data);
//get id of questions
$this->db->select('id');
$this->db->where('question', $question);
$idQuestion = $this->db->get('questions');
//add answer
$data = array(
'questionid' => $idQuestion->row()->id,
'answer' => $answer1
);
$this->db->insert('answers',$data);
//add answer
$data = array(
'questionid' => $idQuestion->row()->id,
'answer' => $answer2
);
$this->db->insert('answers',$data);
$data = array(
'questionid' => $idQuestion->row()->id,
'answer' => $answer3
);
$this->db->insert('answers',$data);
$data = array(
'questionid' => $idQuestion->row()->id,
'answer' => $answercorrect
);
$this->db->insert('answers',$data);
//get id of questions
$this->db->select('id');
$this->db->where('answer', $answercorrect);
$idQuestion = $this->db->get('answers');
//update the question with the correct answer id
$data = array(
'answerid' => $question->row()->id
);
$this->db->where('question', $question);
$this->db->update('questions', $data);
return 1;
}
在控制器
function add() {
$question = $this->input->post('question_add');
$answer1 = $this->input->post('answer_01');
$answer2 = $this->input->post('answer_02');
$answer3 = $this->input->post('answer_03');
$answercorrect = $this->input->post('answer_correct');
$query =$this->quiz->addQuestion($question, $answer1, $answer2, $answer3, $answercorrect);
if($query==1)
{
$this->load->view('form_question'); //where you want to redirect
}
}
你是不是叫你的add()方法的任何意见。如果你只是测试,你可以从方法内部回显 - 但否则你需要调用一个视图,可选地传递$ data到它$ this-> load-> view('form_question',$ data); – cartalot
你能帮助编写命令来解决我的问题吗? –
你知道HTML支持输入数组吗?也许你可以尝试使用它们,它会让你的代码看起来更好,如何实现这一点的例子是使用HTML的name属性如下它会现在成为你的文章中的一个数组,玩一下,我相信你可以找到一个很好的干净的方式来实现这一点。 – killstreet