그래서 처음으로 CI의 form_validation "tool"을 사용하여 많은 도움을 얻을 수있는 연구를 시도하고 있습니다. 내보기 설정에서 모든 것과 올바르게 내 컨트롤러를 보인다 ... 나의 문제는 "제출"단추를 클릭하면 새 기능에 연결되지만 입력 한 내용에 관계없이 오류 메시지가 표시되지 않습니다. "이름", "이메일"상자. 난 사실상 어디서나 오류 메시지를 표시하도록 찾고 있어요 지금은 그냥 유효성 검사를 통해 실행하고 오류 메시지를 표시해야합니다.codeigniters를 사용하는 데 문제가 있습니다.
컨트롤러 파일
public function intelli()
{
$data["messages"] = "";
$this->load->view('engage_header');
$this->load->view('engage_nav');
$this->load->view('intelli/content_intelli', $data);
$this->load->view('engage_footer');
}
public function intelli_email()
{
$this->load->helper('form', 'url'));
$this->load->library('form_validation');
$this->form_validation->set_rules('name_area', 'Name', 'required|alpha|xss_clean');
$this->form_validation->set_rules('email_area', 'Email', 'required|valid_email|xss_clean');
$this->form_validation->set_rules('phone_area', 'Phone', 'is_numeric|xss_clean');
if ($this->form_validation->run() == FALSE) {
$data["messages"] = "";
} else {
$data["messages"] = "The Email has successfully been sent";
}
$this->load->view('engage_header');
$this->load->view('engage_nav');
$this->load->view('intelli/content_intelli', $data);
$this->load->view('engage_footer');
}
보기 파일
<?php
$this->load->helper("form");
?>
<div class="request_demo">
<div id="request_logo"></div>
<div id="top_paragraph">
Intelliship & HALO deliver immediate and quantifiable ROI. Schedule a demo to learn how this transportation management software will positively impact your company's bottom-line profit.
</div>
<div id="entry_box">
<?php echo validation_errors();
echo $messages;
?>
<div id="request_form">
<?php echo form_open('/index.php/site/intelli_email')?>
<input id="name_area" type="text" placeholder="NAME" value="" required/><br/>
<input id="email_area" type="text" placeholder="EMAIL" value="" required/><br/>
<input id="phone_area" type="text" placeholder="PHONE" value=""><br/>
<input id="submit_req" type="submit" value="SUBMIT">
</form>
</div>
</div>
나는 코드가 지금 실수 알지만, 난 그냥 아름다움 이상의 기능을 찾고 있어요. 또한 헬퍼 ('form')를 컨트롤러 내부에로드 할 때부터 뷰에로드하는 것이 중복되므로주의해야합니다.