На ваш взгляд, вам не нужно:
<?php if(validation_errors()) { ?><div class="error-submit"><p><?php echo validation_errors(); ?></p></div><?php } ?>
Вы можете использовать только:
<?php echo validation_errors('<div class="error-submit">', '</div>'); ?>
Нет необходимости в операторе if. Если взглянуть на это, это может решить вашу проблему.
В качестве примечания, в вашем контроллере нет необходимости закрывать тег PHP, и на самом деле рекомендуется оставлять его незамеченным.
Да, и вы могли бы, если хотите, также создать конструкцию для:
function __construct() {
parent::__construct();
$query = $this->db->get_where('users', array('uname' => $this->session->userdata('username')));
foreach($query->result_array() as $row) {
$data = array(
'username' => $row['uname'],
'email' => $row['email'],
'name' => $row['name'],
'description' => $row['description'],
'picture' => $row['picture'],
'gender' => $row['gender'],
);
}
}
Хотя, я думаю, было бы лучше (архитектура MVC) просто сделать этот запрос доступным в модели ( что-то ), подобной этой:
$this->load->model('dude');
$result = $this->dude->get_dude_where('$this->session->userdata('username'));
foreach($result as $row) {
$data = $result['result_array'];
}
Но для этого необходимо настроить функцию модели для передачи / возврата $ query-> result_array ().
В любом случае, я надеюсь, что это решило вашу проблему с form_validation.