Php codeigniter中的表单验证不起作用

Php codeigniter中的表单验证不起作用,php,codeigniter,Php,Codeigniter,在下面的codeigniter代码中,无需在文本框中输入数据即可提交。它应该会引发表单验证。在我的情况下,只有表单验证不会引发表单验证,但需要发送电子邮件。请帮助我解决此问题。 控制器: function create_member() { $this->load->library('form_validation'); // field name, error message, validation rules $this-

在下面的codeigniter代码中,无需在文本框中输入数据即可提交。它应该会引发表单验证。在我的情况下,只有表单验证不会引发表单验证,但需要发送电子邮件。请帮助我解决此问题。 控制器:

function create_member()
    {
        $this->load->library('form_validation');

        // field name, error message, validation rules
        $this->form_validation->set_rules('name', 'Name', 'trim|required');

        $this->form_validation->set_rules('college_name', 'college_name', 'trim|required');
        $this->form_validation->set_rules('email_address', 'Email Address', 'trim|required|valid_email');
    $this->form_validation->set_rules('phone_number', 'Phone Number', 'trim|required');
            $this->form_validation->set_rules('address', 'address', 'trim|required');
        $this->form_validation->set_rules('message', 'message', 'trim|required');
         $this->load->helper('date');

        if($this->form_validation->run() == FALSE)
        {
            $this->load->view('contact_view');
        }

        else
        {           
            $this->load->model('contact_model');

            if($query = $this->contact_model->create_member())
            {

                $this->load->view('contact_view');  
                    redirect('contact', 'refresh'); 
            }


        }

    }


}
视图:


在您的视图中,您已经在这些输入中设置了值。如果规则仅为
必需
,则
表单验证将返回true。不应为这些输入设置默认值,而应在输入字段没有值时使用
占位符
属性显示消息

在你看来还有另一个问题。你的表格没有关闭


您可以添加一行
echo form_close()
在视图中的
表单提交

之后,您已经在这些输入中设置了值。如果规则仅为
必需
,则
表单验证将返回true。不应为这些输入设置默认值,而应在输入字段没有值时使用
占位符
属性显示消息

在你看来还有另一个问题。你的表格没有关闭


您可以添加一行
echo form_close()
在视图中的
表单提交

之后,您已经在这些输入中设置了值。如果规则仅为
必需
,则
表单验证将返回true。不应为这些输入设置默认值,而应在输入字段没有值时使用
占位符
属性显示消息

在你看来还有另一个问题。你的表格没有关闭


您可以添加一行
echo form_close()
在视图中的
表单提交

之后,您已经在这些输入中设置了值。如果规则仅为
必需
,则
表单验证将返回true。不应为这些输入设置默认值,而应在输入字段没有值时使用
占位符
属性显示消息

在你看来还有另一个问题。你的表格没有关闭


您可以添加一行
echo form_close()在视图中的
表单_submit

之后,您应该添加此行

    <?php echo validation_errors(); ?>

在视图中,您应该添加这一行

    <?php echo validation_errors(); ?>

在视图中,您应该添加这一行

    <?php echo validation_errors(); ?>

在视图中,您应该添加这一行

    <?php echo validation_errors(); ?>
**admin.php(控制器)**
管理员登录
**admin.php(控制器)**
管理员登录
**admin.php(控制器)**
管理员登录
**admin.php(控制器)**
管理员登录
**使用codeigniter库进行表单验证、图像上传和验证码**
**使用codeigniter库进行表单验证、图像上传和验证码**
**使用codeigniter库进行表单验证、图像上传和验证码**
**使用codeigniter库进行表单验证、图像上传和验证码**

Fu Xu是正确的,set_value()中的第二个值是您希望表单字段预填充的值,如从数据库中拉取值。Fu Xu是正确的,set_value()中的第二个值是您希望表单字段预填充的值,如从数据库中拉取值。Fu Xu是正确的,set_value()中的第二个值是您希望表单字段预填充的值-就像从数据库中提取值一样。傅旭是正确的,set_value()中的第二个值是您希望表单字段预填充的内容-就像从数据库中提取值一样。请您的答案解释一下为什么此代码回答此问题?只有代码的答案是,因为它们不教授解决方案。您能请您的答案解释一下为什么这个代码回答这个问题吗?只有代码的答案是,因为它们不教授解决方案。您能请您的答案解释一下为什么这个代码回答这个问题吗?只有代码的答案是,因为它们不教授解决方案。您能请您的答案解释一下为什么这个代码回答这个问题吗?代码唯一的答案是,因为他们不教解决方案。
**Form validation, image upload and captcha using codeigniter libraries**

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Login extends CI_Controller {

    public function __construct()
    {
        parent::__construct();
        $this->load->model('Loginmodel');

    }
    public function index()
    {
        $config = array(
            'img_path'      => 'uploadss/',
            'img_url'       => base_url().'uploadss/',
            'font_path'     => base_url().'system/fonts/texb.ttf',
            'img_width'     => '200',
            'img_height'    => 90,
            'word_length'   => 3,
            'font_size'     => 25
        );
        $captcha = create_captcha($config);

        // Unset previous captcha and set new captcha word
        $this->session->unset_userdata('captchaCode');
        $this->session->set_userdata('captchaCode', $captcha['word']);

        // Pass captcha image to view
        $fetch['captchaImg'] = $captcha['image'];

        $fetch['data'] = $this->Loginmodel->alldata();
        $this->load->view('login',$fetch);
    }

    public function loginerror()
    {
        $this->form_validation->set_rules('fname','first name','required|alpha');
        $this->form_validation->set_rules('lname','last name', 'required');
        $this->form_validation->set_rules('mobile', 'Mobile', 'required|numeric');
        $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email');
        $this->form_validation->set_rules('password', 'Password', 'required');
        $this->form_validation->set_rules('companyname', 'Companyname', 'required');
        $this->form_validation->set_rules('designation', 'Designation', 'required');
        $this->form_validation->set_rules('companysize', 'Companysize', 'required|numeric');

        if($this->form_validation->run())
        {
            $inputCaptcha = $this->input->post('captcha');
            $sessCaptcha = $this->session->userdata('captchaCode');
            if($inputCaptcha === $sessCaptcha)
            {
                echo 'Captcha code matched.';

                    $fname = $this->input->post('fname');
                    $lname = $this->input->post('lname');
                    $mobile = $this->input->post('mobile');
                    $email = $this->input->post('email');
                    $password = $this->input->post('password');
                    $companyname = $this->input->post('companyname');
                    $designation = $this->input->post('designation');
                    $companysize = $this->input->post('companysize');

                    $checkmobile = $this->Loginmodel->checkmobile($mobile,$email);

                    if($checkmobile)
                    {
                        $this->session->set_flashdata("danger","Mobile Number or Email exist.....");
                        return redirect('Login/index'); 
                    }
                    else
                    {
                        $insertdata = $this->Loginmodel->insert($fname,$lname,$mobile,$email,$password,$companyname,$designation,$companysize);
                        $this->session->set_flashdata("success","Record Inserted");
                        return redirect('Home/indexhome');
                    }   
                // }
                // else
                // {
                //  $this->session->set_flashdata("danger","Please fill all the values properly");
                //  $this->index();
                // }
            }
            else
            {
                echo 'Captcha code does not match, please try again.';
                $this->index();
            }
        }
        else
        {
            $this->session->set_flashdata("danger","Please fill all the values properly");
            $this->index();
        }
    }

    public function refresh(){
        // Captcha configuration
        $config = array(
            'img_path'      => 'uploadss/',
            'img_url'       => base_url().'uploadss/',
            'font_path'     => base_url().'system/fonts/texb.ttf',
            'img_width'     => '200',
            'img_height'    => 90,
            'word_length'   => 3,
            'font_size'     => 25
        );
        $captcha = create_captcha($config);

        $this->session->unset_userdata('captchaCode');
        $this->session->set_userdata('captchaCode',$captcha['word']);

        echo $captcha['image'];
    }

    public function upload($id)
    {
        if(!empty($_FILES['imagename']['name']))
        {
                $config['upload_path'] = 'uploadss/';
                $config['allowed_types'] = 'jpg|jpeg|png|gif';
                $config['file_name'] = $_FILES['imagename']['name'];

                $this->load->library('upload',$config);
                $this->upload->initialize($config);

                if($this->upload->do_upload('imagename'))
                {
                    $uploadData = $this->upload->data();
                    $imagename = $uploadData['file_name'];
                }
                else
                {
                    echo "not upload";
                }
        }
        else
        {
            echo "error";
        }
        $this->load->view('uploadimage');
    }

    public function uploadimageerror()
    {
        if(!empty($_FILES['imagename']['name']))
        {
                $config['upload_path'] = 'uploadss/';
                $config['allowed_types'] = 'jpg|jpeg|png|gif';
                $config['file_name'] = $_FILES['imagename']['name'];

                $this->load->library('upload',$config);
                $this->upload->initialize($config);

                if($this->upload->do_upload('imagename'))
                {
                    $uploadData = $this->upload->data();
                    $imagename = $uploadData['file_name'];
                }
                else
                {
                    echo "not upload";
                }
        }
        else
        {
            echo "error";
        }
    }

    public function deletedata($id)
    {
        $dele = $this->Loginmodel->delete($id);
        return redirect('Login/index');
    }
}
?>