您错过了表单成功部分的$data['fullname'] = "",但您已将代码加倍尝试并使其尽可能精简。
我会怎么做。
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Contact extends CI_Controller {
public function index() {
$this->load->library('form_validation');
// Double check spelling of set rules make sure matches the input on the view name="" area
$this->form_validation->set_rules('fullname', 'Full Name', 'required'); // Removed |alpha no need I think
$this->form_validation->set_rules('email', 'Email Address', 'required|valid_email');
$this->form_validation->set_rules('message', 'Message', 'required');
$fullname = $this->input->post('fullname');
if (isset($fullname)) {
$data['fullname'] = $fullname;
} else {
$data['fullname'] = "";
}
$data['message'] = "";
if ($this->form_validation->run() == false) {
$this->load->view('site_header');
$this->load->view('site_nav');
$this->load->view('content_contact', $data);
$this->load->view('site_footer');
} else {
$data['message'] = "The email has successfully been sent!";
$this->load->view('site_header');
$this->load->view('site_nav');
$this->load->view('content_contact', $data);
$this->load->view('site_footer');
}
}
}
查看:注意可能需要设置一些路由。
<form action="<?php echo base_url('contact');?>" method="post">
<input type="text" name="fullname" value="<?php echo $fullname;?>" placeholder=""/>
</form>
您的代码
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Site extends CI_Controller {
public function contact() {
$data['message'] = '';
$this->load->view('site_header');
$this->load->view('site_nav');
$this->load->view('content_contact', $data);
$this->load->view('site_footer');
}
public function send_email() {
$this->load->library('form_validation');
$this->form_validation->set_rules('fullName', 'Full Name', 'required|alpha');
$this->form_validation->set_rules('email', 'Email Address', 'required|valid_email');
$this->form_validation->set_rules('message', 'Message', 'required');
if ($this->form_validation->run() == false) {
$data['message'] = '';
$data['fullname'] = $this->input->post('fullName');
$this->load->view('site_header');
$this->load->view('site_nav');
$this->load->view('content_contact', $data);
$this->load->view('site_footer');
} else {
$data['fullname'] = "";
$data['message'] = 'The email has successfully been sent!';
$this->load->view('site_header');
$this->load->view('site_nav');
$this->load->view('content_contact', $data);
$this->load->view('site_footer');
}
}
}