我有一个简单的问题我有一个表单,用户输入他的详细信息,当点击提交按钮时,他的详细信息提交到数据库,它将把用户带到另一个页面,我使用codeigniter,我是新来的这是有一个简单的方法吗? tnx为你提供帮助。这是我的cmv:
控制器
<?php
class Info extends CI_Controller{
function index(){
$this->load->view('info_view');
}
// insert data
function credentials()
{
$data = array(
'name' => $this->input->post('name'),
'second_name' => $this->input->post('second_name'),
'phone' => $this->input->post('phone'),
'email' => $this->input->post('email'),
);
$this->info_model->add_record($data);
}
}
?>
模型
<?php
class Info_model extends CI_Model {
function get_records()
{
$query = $this->db->get('credentials');
return $query->result();
}
function add_record($data)
{
$this->db->insert('credentials', $data);
return;
}
}
?>
查看
<html>
<head>
</head>
<body>
<?php echo form_open('info/credentials'); ?>
<ul id="info">
<li>Name:<?php echo form_input('name')?></li>
<li>Second Name: <?php echo form_input('second_name');?></li>
<li>Phone: <?php echo form_input('phone');?></li>
<li>Email: <?php echo form_input('email');?></li>
<li><?php echo form_submit('submit', 'Start survay!!' );?></li>
</ul>
<?php echo form_close();?>
</body>
</html>
答案 0 :(得分:2)
如果你需要的只是提交表格时的简单重定向:
$this->info_model->add_record($data);
redirect('controller/method');
答案 1 :(得分:0)
您可以使用URL Helper中的redirect()函数实际重定向用户
(http://ellislab.com/codeigniter/user-guide/helpers/url_helper.html)
像这样:
$this->load->helper('url');
redirect('/some/other/page');
请注意,必须在将任何数据输出到浏览器之前调用它。
另一种方法是根据上下文简单地加载两个不同的视图。通常您也需要一些表单验证,因此您可以使用它来指导用户。我通常在我的函数中得到类似的东西,用于发布数据,将其插入数据库并“重定向”:
$this->load->library('form_validation');
$this->form_validation->set_rules('name', 'Name', 'required|trim|xss_clean');
/* More validation */
if ($this->form_validation->run() !== FALSE) {
$data = array(
'name' => $this->input->post('name'),
'second_name' => $this->input->post('second_name'),
'phone' => $this->input->post('phone'),
'email' => $this->input->post('email'),
);
$this->info_model->add_record($data);
$this->load->view('some_other_view');
} else {
$this->load->view('info_view');
}
答案 2 :(得分:0)
您还可以使用refresh作为第二个参数:
$this->info_model->add_record($data);
redirect('controllerName/methodName','refresh');