它找到這個答案在這裏:https://stackoverflow.com/a/15086172/827224
這應該做你想要什麼。根據我們在Stackover上的聊天,答案已經爲您提供。您的問題不像您在聊天中提出的要求那麼清晰。找到能夠解決您的問題
笨的基本使用下面的代碼:
我提供這個代碼只爲你減少我們去評論量。 你確定你對Codeigniter來說很新。我只能盡我所能幫忙。
步驟1:數據庫
創建數據庫表 「tblquestions」。字段應該是QID,qA,qB和qC。如果你有那麼多,那麼填充記錄最多爲43的字段。少有5條記錄應該這樣做。
步驟2:模型
<?php
class Survay extends CI_Model {
function dosurvay($question_id = null) {
$this->db->select('QID, Question, qA, qB, qC');
$this->db->from('tblquestions');
if ($question_id) {
$this->db->where('QID', $question_id);
}
$this->db->limit(1);
$query = $this->db->get();
if ($query->num_rows() == 1) {
return $query->result();
} else {
return false;
}
}
function addsurvay($arrData) {
$this->db->insert('tblanswers', $arrData);
if ($this->db->affected_rows() > 0) {
return $this->db->insert_id();
} else {
return false;
}
}
}
?>
步驟3:控制器
<?php
class Survaycontroller extends CI_Controller {
// 'QID, Question, qA, qB, qC'
function __construct() {
parent::__construct();
$this->load->model('survay');
}
function index() {
//This should select the survey question
$data = array();
$question_id = $this->uri->segment(3);
$data[survay_data] = $this->survay->dosurvay($question_id);
$this->load->view('survay_view', $data);
}
function addanswer() {
//The answer is submitted to this...
$arrData = array();
$userid = null;
if ($this->session->userdata("userid")) {
$userid = $this->session->userdata("userid");
}
if ($this->input->post()) {
$arrData["answerid"] = $this->input->post("QID");
$arrData["questionid"] = $this->input->post("qA");
if ($this->input->post("qA")) {
$arrData["answerA"] = $this->input->post("qA");
}
if ($this->input->post("qB")) {
$arrData["answerB"] = $this->input->post("qB");
}
if ($this->input->post("qC")) {
$arrData["answerC"] = $this->input->post("qC");
}
$arrData["userid"] = $userid;
}
$viewData[survay_data_id] = $this->survay->addsurvay($arrData); //Get the ID of the answer stored
$this->load->view('survay_view', $viewData);
}
}
?>
步驟4:視圖
<?php if(isset($survay_data)) : ?>
<form action="http://localhost/Surva/index.php/survaycontroller/addanswer/" name="myform" id="myform" method="post">
<?php foreach ($survay_data as $survay): ?>
<ul>
<li><h1><?php echo $survay->Question; ?></h1></li>
<li><?php echo $survay->qA; ?><input type="checkbox" name="qA" value="<?php echo $survay->qA; ?>"></li>
<li><?php echo $survay->qB; ?><input type="checkbox" name="qB" value="<?php echo $survay->qA; ?>"></li>
<li><?php echo $survay->qC; ?><input type="checkbox" name="qC" value="<?php echo $survay->qA; ?>"></li>
<li><input type="hidden" name="QID" value="<?php echo $survay->QID; ?>"></li>
<li><input type="submit" name="btn" value="Answer"></li>
</ul>
<?php endforeach; ?>
</form>
<?php endif; ?>
測試:
http://localhost/Surva/index.php/survaycontroller/index/2
檢索題號2
現在,這是肯定的工作。替換你已有的一切。讓我知道這些新代碼是否更有效地取代了我以上的代碼。
有趣的是,你擁有投票權彌補了這個問題,即使你沒有表現出任何試圖挽救這些值 – mishu 2013-02-26 10:58:34
我要求幫助,我得到的幫助沒有什麼有趣的是:) – 2013-02-26 11:11:04
老實說,我一直在尋找你的代碼是最後幾個問題,並試圖確定你想要做什麼,但沒有成功。這是一項多項選擇調查嗎?如果這樣的代碼代表一個問題?如果我們知道你正在努力完成什麼,這將會容易得多,因爲代碼的佈局方式對於多種選擇場景來說並不理想。 – 2013-02-26 11:28:09