form_validation не работает, где все в порядке в моем коде, пожалуйста, помогите мне - PullRequest
0 голосов
/ 30 мая 2018

автозагрузка:

$autoload['libraries'] = array('database','form_validation');

контроллер:

class Adminlogin extends CI_controller
{
public function new_user()
        {
            $this->form_validation->set_rules('name','name','required');
            $this->form_validation->set_rules('email','email','required|valid_email');
            $this->form_validation->set_rules('password','password','required|min_length[8]|max_length[15]');

            if ($this->form_validation->run())
            {

                $Name    = $this->input->POST('name');  
                $Email = $this->input->POST('email');
                $Password = $this->input->POST('password');

                $data = array('Name' => $Name, 'Email' => $Email, 'Password' => $Password);
                $this->load->model('login_model');              
                $this->login_model->newuser_data($data);

                //redirect('public/login_form');
                $data['message'] = 'Data Inserted Successfully';
            }
            else
            {
                echo "not done";
            }
        }

если я удаляю условие из проверки, тогда форма работает и данные в путешествии, а когда я применяю условие для проверки, тогда формане работающие данные также не путешествуют без каких-либо ошибок.

модель:

public function newuser_data($data)
    {
        $this->db->insert('users', $data);
        $query = $this->db->insert_id();
    }

вид:

 <?php echo form_open('adminlogin/new_user'); ?>
            <div class="col-md-4">
                                    <center><h3>Create User!</h3>

                <div class="form-group">
                    <?php echo form_input(['type'=>'name','name'=>'name','placeholder'=>'Name','class'=>'form-control contact-form','value'=>set_value('name')]) ?>
                    <?php echo form_error('name'); ?>
                </div>
                <div class="form-group">
                    <?php echo form_input(['type'=>'email','name'=>'email','placeholder'=>'Email','class'=>'form-control contact-form','value'=>set_value('Email')]) ?>
                    <?php echo form_error('email'); ?>
                </div>
                <div class="form-group">
                    <?php echo form_input(['type'=>'Password','name'=>'password','placeholder'=>'Password','class'=>'form-control contact-form','value'=>set_value('Password')]) ?>
                    <?php echo form_error('password'); ?> 
                </div>
                <div class="form-group text-right button-submit btn-submit">
                    <?php echo form_submit(['name'=>'submit','value'=>'Login','class'=>'btn btn-primary']) ?>
                </div>
            </div>

Ответы [ 5 ]

0 голосов
/ 30 мая 2018

Попробуйте использовать этот контроллер

class Adminlogin extends CI_controller
{
public function new_user()
        {
            $this->form_validation->set_rules('name','name','required');
            $this->form_validation->set_rules('email','email','required|valid_email');
            $this->form_validation->set_rules('password','password','required|min_length[8]|max_length[15]');

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

                echo 'Not done';
            }
            else
            {
                $Name    = $this->input->POST('name');  
                $Email = $this->input->POST('email');
                $Password = $this->input->POST('password');

                $data = array('Name' => $Name, 'Email' => $Email, 'Password' => $Password);
                $this->load->model('login_model');              
                $this->login_model->newuser_data($data);


            $data['message'] = 'Data Inserted Successfully';
        }
    }
0 голосов
/ 30 мая 2018
class Adminlogin extends CI_controller
{
public function new_user()
        {
            $this->form_validation->set_rules('name','name','required');
            $this->form_validation->set_rules('email','email','required|valid_email');
            $this->form_validation->set_rules('password','password','required|min_length[8]|max_length[15]');

            if ($this->form_validation->run()!=FALSE)
            {

                $Name    = $this->input->POST('name');  
                $Email = $this->input->POST('email');
                $Password = $this->input->POST('password');

                $data = array('Name' => $Name, 'Email' => $Email, 'Password' => $Password);
                $this->load->model('login_model');              
                $this->login_model->newuser_data($data);

                //redirect('public/login_form');
                $data['message'] = 'Data Inserted Successfully';
            }
            else
            {
                echo "not done";
            }
        }

Изменить, если условие

if ($this->form_validation->run()) 

на

if ($this->form_validation->run()!=FALSE)
0 голосов
/ 30 мая 2018

Измени свою линию

if ($this->form_validation->run())

на

if ($this->form_validation->run()===TRUE)
0 голосов
/ 30 мая 2018

Измените свое заявление

С

if ($this->form_validation->run())

На

if ($this->form_validation->run() == TRUE)

ИЛИ

if ($this->form_validation->run() != FALSE)
0 голосов
/ 30 мая 2018

измените это на

if ($this->form_validation->run())

на

if ($this->form_validation->run() != FALSE)

Чтение - Проверка формы в codeigniter.com

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...