Codeigniter не отображает validation_errors ()

РЕШЕНИЕ: Я использовал сервер WAMP на своем VPS. Проблема заключалась в том, что модуль перезаписи не был загружен в настройках apache. Я исправил это, перейдя в мою папку apache / conf / http.conf и удалив хэштег infront этой строки: LoadModule rewrite_module modules / mod_rewrite.so. Я перезапустил apache, и он сработал.

EDIT: он не работает, даже если я вводил адрес электронной почты и пароль. Я вообще не могу запустить form_validation.

EDIT 2: Также выясняется, что я не могу ответить на это сообщение this-> input-> post ('email'); в функции login_validation.

EDIT 3: я выделил $ this-> output-> enable_profiler (); и он сказал, что я не отправил никаких данных. Возможно ли, что мой .htaccess делает что-то с публикацией?

Я создаю систему входа / регистрации с помощью codeigniter. Я получил его для работы на localhost, но что-то должно было произойти, когда я переместил его на свой компьютер.

Я автоматически загружаю форму в autoload.php:

$autoload['helper'] = array('form', 'url'); 

Это мой код проверки в классе Main file controllerlers / main.php:

 public function login_validation(){ $this->load->library('form_validation'); $this->form_validation->set_rules('email', 'Email', 'required'); $this->form_validation->set_rules('password', 'Password', 'required|md5'); if($this->form_validation->run()){ //NO VALIDATION ERRORS }else{ echo 'Errors:<br />'; echo validation_errors(); } } 

Моя форма:

 <?php echo form_open('main/login_validation'); $property_type = array('class' => 'bar left', 'value' => 'E-Mail', 'name' => 'email'); echo form_input($property_type); $property_type = array('class' => 'bar right', 'value' => 'Password', 'name' => 'password'); echo form_password($property_type); $property_type = array('class' => 'buttonone', 'value' => 'Login', 'name' => 'login_submit'); echo form_submit($property_type); echo form_close(); ?> 

Когда я не нахожу что-либо в форме, он должен отображать электронную почту и пароль. Он говорит только об ошибках :. Но он не отображает ошибки проверки.

Мне также пришлось перейти на другой .htaccess, когда я загрузил его на свой компьютер.

Это мой новый htaccess:

  <IfModule mod_rewrite.c> RewriteEngine On # !IMPORTANT! Set your RewriteBase here and don't forget trailing and leading # slashes. # If your page resides at # http://www.example.com/mypage/test1 # then use # RewriteBase /mypage/test1/ RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L] </IfModule> <IfModule !mod_rewrite.c> # If we don't have mod_rewrite installed, all 404's # can be sent to index.php, and everything works as normal. # Submitted by: ElliotHaughin ErrorDocument 404 /index.php </IfModule> 

Это мой старый .htaccess:

 RewriteEngine On RewriteBase / #Removes access to the system folder by users. #Additionally this will allow you to create a System.php controller, #previously this would not have been possible. #'system' can be replaced if you have renamed your system folder. RewriteCond %{REQUEST_URI} ^system.* RewriteRule ^(.*)$ /index.php?/$1 [L] #When your application folder isn't in the system folder #This snippet prevents user access to the application folder #Submitted by: Fabdrol #Rename 'application' to your applications folder name. RewriteCond %{REQUEST_URI} ^application.* RewriteRule ^(.*)$ /index.php?/$1 [L] #Checks to RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L] 

просто проверьте условие if и введите функцию ошибки формы для просмотра страницы

public function login_validation () {

  $this->load->library('form_validation'); $this->form_validation->set_rules('email', 'Email', 'required'); $this->form_validation->set_rules('password', 'Password', 'required|md5'); if ($this->form_validation->run($this) !== FALSE) //write like this if condition { //NO VALIDATION ERRORS }else{ echo 'Errors:<br />'; echo validation_errors(); } } 

ваша страница просмотра помещена в это

 <?php echo validation_errors(); ?> 

подробнее обратитесь к http://ellislab.com/codeigniter/user-guide/libraries/form_validation.html.

Я использовал WAMP-сервер на своем VPS. Проблема заключалась в том, что модуль перезаписи не был загружен в настройках apache. Я исправил это, перейдя в мою папку apache / conf / http.conf и удалив хэштег infront этой строки: LoadModule rewrite_module modules / mod_rewrite.so. Я перезапустил apache, и он сработал.