未显示代码点火器验证错误


Codeigniter validation errors are not displaying

我的代码点火器验证错误没有显示有人能帮忙吗?我的代码是

public function addProduct(){
    $this->load->view('header', $this->data);
    $this->load->view('product/addProduct');
    $this->load->view('footer');
        $this->form_validation->set_rules('productName', 'Product Name', 'required|trim');
        $this->form_validation->set_rules('productPrice', 'Product Price', 'required|trim');
        if (!$this->form_validation->run() == FALSE)
        {
            // some stuff on validation success
        }
        else{
            $this->load->view('product/addProduct');
        }
}

我添加了echo validation_errors();在我看来,表单的作用是product/addProduct。

试试这个吧,它对你有用。

form_error()函数返回您的表单错误。

        $post_fields = $this->input->post();
        $data['msg'] = '<ul>';
        foreach ($post_fields as $k => $v) {
            if (form_error($k))
                $data['msg'] .= "<li>" . strip_tags(form_error($k)) . "</li>'n";
        }
        $data['msg'].='</ul>';
        $this->load->view('product/addProduct',$data);

echo validation_errors();//this function also return form  error.

查看示例

<?php echo validation_errors('<div class="error">', '</div>'); ?>
<!-- lower case for the controller name on form open -->
<?php echo form_open_multipart('product/addProduct');?>
<h5>productName</h5>
<input type="text" name="productName" value="<?php echo set_value('productName'); ?>" size="50" />
<h5>productPrice</h5>
<input type="text" name="productPrice" value="<?php echo set_value('productPrice'); ?>" size="50" />
<div><input type="submit" value="Submit" /></div> 
<?php echo form_close();?>

控制器

请确保您的文件名和类名如下所示,其中第一个字母仅大写

引导

文件名:Product.php

<?php
class Product extends CI_Controller {
 public function __construct() {
    parent::__construct();
    $this->load->library('form_validation');
    $this->load->helper('form');
    $this->load->helper('url');
 }
 public function addProduct(){
    // You can get data from here also
    $this->data['some'] = 'Blah';
    $this->form_validation->set_rules('productName', 'Product Name', 'required|trim');
    $this->form_validation->set_rules('productPrice', 'Product Price', 'required|trim');
    // remove your !
    if ($this->form_validation->run() == FALSE){
        // You can just display view in this area you do not have to load it multiple times
        $this->load->view('header', $this->data);
        $this->load->view('product/addProduct');
        $this->load->view('footer');
    } else {
        // some stuff on validation success
    }
 }
}

此外,请检查您是否已在config.php中设置了基本url。现在CI3版本中需要php。