我有一个名为 feedback.php 的表单,其中包含两个问题。我想撤回所选单选按钮的值并在代码点火器中插入数据库。表名是“反馈”,我在其中存储这些值。 表单的html代码在这里
<form role="form" method="post" name ="your_form" action="<?php echo base_url();?>/index.php/feedback_model/index" >
<span class="badge">1</span></a> Is your complain solved ?
<div class="form-group">
<div class="radio">
<label><input type="radio" name="Question1"
value="yes">Yes</label>
</div>
<div class="radio">
<label><input type="radio" name="Question1" value="no">NO</label>
</div>
</div>
<span class="badge">2</span></a> How easy was it to complain to us?
<div class="form-group">
<div class="radio">
<label><input type="radio" name="Question2" value='excellent'>Excellent</label>
</div>
<div class="radio">
<label><input type="radio" name="Question2" value="good">Good </label>
</div>
<div class="radio">
<label><input type="radio" name="Question2" value="bad">Bad</label>
</div>
<div class="radio">
<label><input type="radio" name="Question2" value="verybad">Very Bad</label>
</div>
</div>
</form>
在 Controller 中,我有带有这段代码的 feedback.php
<?php
class feedback_model extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->model('feedback_model');
}
function index()
{
// Including Validation Library
// Setting Values For Tabel Columns
$data = array(
'complain_id' => $this->input->post('complain_id'),
'email' => $this->input->post('email'),
'response1' => $this->input->post('Qustion1'),
'response1' => $this->input->post('Question2'),
'response1' => $this->input->post('Question3'),
'response1' => $this->input->post('Question4')
);
// Transfering Data To Model
$this->insert_model->form_insert($data);
// Loading View
$this->load->view('feedback');
}
}
?>
在模型中我有带有这段代码的 feedback_model.php。
<?php
class feedback_model extends CI_Model{
function __construct() {
parent::__construct();
}
function form_insert($data){
// Inserting in Table(feedback) of Database(college)
$this->db->insert('feedback', $data);
}
}
?>
最佳答案
我创造了和你一样的东西
首先您需要正确设置您的项目 像数据库连接,CI 的自动加载助手
这是我的 feedback.php Controller
<?php
class feedback extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->model('feedback_model');
}
function index() {
// Loading View
$this->load->view('feedback');
}
function submit() {
// check for method
if ($this->input->post('REQUEST_METHOD') == 'POST') {
// Including Validation Library
// Setting Values For Tabel Columns
$data = array(
'response1' => $this->input->post('Qustion1'),
'response2' => $this->input->post('Question2')
);
// Transfering Data To Model
$this->feedback_model->form_insert($data);
}
}
}
这是我的 feedback_model.php 与你的没什么不同
<?php
class feedback_model extends CI_Model{
function form_insert($data){
// Inserting in Table(feedback) of Database(college)
$this->db->insert('feedback', $data);
}
}
这里是 View ,在文件夹views下命名为feedback.php
<html>
<head>
<title></title>
</head>
<body>
<form role="form" method="POST" action="feedback/submit">
<span class="badge">1</span></a> Is your complain solved ?
<div class="form-group">
<div class="radio">
<label><input type="radio" name="Question1"
value="yes">Yes</label>
</div>
<div class="radio">
<label><input type="radio" name="Question1" value="no">NO</label>
</div>
</div>
<span class="badge">2</span></a> How easy was it to complain to us?
<div class="form-group">
<div class="radio">
<label><input type="radio" name="Question2" value='excellent'>Excellent</label>
</div>
<div class="radio">
<label><input type="radio" name="Question2" value="good">Good </label>
</div>
<div class="radio">
<label><input type="radio" name="Question2" value="bad">Bad</label>
</div>
<div class="radio">
<label><input type="radio" name="Question2" value="verybad">Very Bad</label>
</div>
</div>
<div class="form-group">
<input type="submit" value="submit" name="submit">
</div>
</form>
</body>
</html>
在 View 中我添加了一个属性
method="POST" and action="feedback/submit"
method 表示发送到服务器的请求类型 Action 是你提交的表单
所以在这种情况下,表单将提交给 Controller 反馈,其中 方法是提交
从提交方法
我检查请求方法是否为post
获取post数据即
Question1
Question2
并将其传递给反馈模型
$data = array(
'response1' => $this->input->post('Qustion1'),
'response2' => $this->input->post('Question2')
);
// Transfering Data To Model
$this->feedback_model->form_insert($data);
您可以根据需要修改它。
还有一件重要的事情是 MVC 的命名约定
由于您有一个 Controller feedback_model.php 然后再次为模型创建了一个 feedback_model.php,这令人困惑。
希望对你有帮助
关于javascript - 如何检索单选按钮的值并在 codeigniter 中插入数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30210668/