首页 > 解决方案 > 如何在codeigniter中获取验证错误?

问题描述

您好,我在数据库中插入数据。当我同时插入类别和描述时,然后插入数据,但是当我不插入类别和描述输入并单击创建时,空白页 admin/category/register_category 没有显示错误,我想显示该类别和描述字段不应为空。

category.php 查看页面如下:

<?php if(isset($_SESSION['success'])){ ?>
    <div class="alert alert-success"><?php echo $_SESSION['success']; ?> 
    </div>
<?php } ?>
<?php echo validation_errors('<div class="alert alert-danger">','</div>'); ?>

<form class="form" action="<?php echo site_url('admin/category/register_category') ?>" method="POST">
    <label for="contactinput5">Category Name</label>
    <input class="form-control border-primary" type="text" placeholder="category" name="category" id="contactinput5">
    <label for="contactinput5">Discription</label>
    <textarea class="form-control border-primary" type="text" placeholder="discription" name="discription" id="contactemail5"></textarea>
    <button type="submit" name="create" class="btn btn-primary">

我的控制器 Category.php 页面是:

<?php
class Category extends CI_Controller {
    function index() {
        $this->load->view('admin/category');
    }

    function register_category() {      
        $this->form_validation->set_rules('category', 'Category', 'required');
        $this->form_validation->set_rules('discription', 'Discription', 'required');
        if($this->form_validation->run() == TRUE){
            echo "form validate";
            $this->load->model('categories');
            $insert_category = $this->categories->validate();
            if($insert_category){
                $this->session->set_flashdata("success","Your data has been added");
                redirect("admin/category","refresh");
            }
            else{
                redirect('admin/category');
            }
        }
    }
}
?>  

型号分类页面:

<?php
class Categories extends CI_Model
{
     function validate()
    {
        $arr['categoryname'] =  $this->input->post('category');
        $arr['discription'] =   $this->input->post('discription');
        return $this->db->insert('category',$arr);      
    }
}
?>

标签: phpcodeignitercodeigniter-3

解决方案


嘿伙计们,谢谢,我只需输入此代码即可得到答案

if($this->form_validation->run() == FALSE)
{
    $this->index();
}

推荐阅读