我有一个链接,当点击时将一个参数传递给我的控制器,就像这样的函数:
/家庭/询问/ 54
这是我的控制者:
public function inquire($id) {
$this->form_validation->set_rules('inputName', 'Name', 'required');
if ($this->form_validation->run() == FALSE) {
$this->load->view('client/M_inquire.php');
} else {
$this->email->from('noreply@test.com', 'System');
$this->email->to('contactus@test.com');
$this->email->subject('New Client Registration');
$this->email->message(
"Name: " . $this->input->post('inputName') . "<br />" .
"Phone: " . $this->input->post('inputPhone') . "<br />" .
"Email: " . $this->input->post('inputEmail') . "<br />" .
"Nurse profession: " . $this->input->post('inputProfession') . "<br />" .
"Nurse ID: " . $nurseid
);
$this->email->send();
$this->load->view('client/M_inquire_success.php');
}
}
这是我的观点:
<?php echo form_open('home/inquire'); ?>
<label>Full Name</label>
<input type="text" name= "inputName" id="inputName">
问题是控制器需要一个参数,所以当表单打开时它会崩溃。知道如何维护我通过的第一个参数并收集一些表单数据和电子邮件吗?
感谢很多。
答案 0 :(得分:1)
在视图中致电form_open
时,您可以附加id
。
因此,在您的控制器中,您可以使用以下内容:
...
if ($this->form_validation->run() == FALSE) {
$data['the_id'] = $id;
$this->load->view('client/M_inquire.php', $data);
} else {
...
然后在视图中:
<?php echo form_open('home/inquire/' . $the_id); ?>