[英]form_validation CodeIgniter
我想知道我做错了什么,所以无论我在表格中输入什么电子邮件地址,它都将返回“无法访问与您的字段名称电子邮件地址(电子邮件)相对应的错误消息”,并且表格无法成功发送。
<?php echo validation_errors('<p class="error">'); ?>
<?php echo form_open('home/send'); ?>
<table>
<tr>
<th>
<label for="name">Name</label>
</th>
<td>
<input type="text" name="name" id="name" value="<?php echo set_value('name'); ?>">
</td>
</tr>
<tr>
<th>
<label for="email">Email</label>
</th>
<td>
<input type="text" name="email" id="email" value="<?php echo set_value('email'); ?>">
</td>
</tr>
<tr>
<th>
<label for="message">Message</label>
</th>
<td>
<textarea name="message" id="message"><?php echo set_value('message'); ?></textarea>
</td>
</tr>
</table>
<?php echo form_submit('submit', 'Submit'); ?>
<?php echo form_close(); ?>
function send()
{
$this->load->library('form_validation');
$this->form_validation->set_rules('name', 'Name', 'trim|required');
$this->form_validation->set_rules('email', 'Email Address', 'trim|required|email');
$this->form_validation->set_rules('message', 'Message', 'trim|required');
if($this->form_validation->run() == false) {
$data['page_title'] = "Contact Mike";
$data['section'] = "contact";
$this->load->view('templates/header', $data);
$this->load->view('contact', $data);
$this->load->view('templates/footer', $data);
} else {}
在视图文件中使用form_error()函数
<?php echo form_error('username'); ?>
<input type="text" name="username" value="<?php echo set_value('username'); ?>" size="50" />
根据文档,规则应为valid_email :
$this->form_validation->set_rules('email', 'Email Address', 'trim|required|valid_email');
您已在其中放置了不存在的“电子邮件”规则...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.