Я хочу сделать форму редактирования, но у меня есть проблема при отображении данных. Это предупреждение в моем коде ..
Обнаружена ошибка PHP
Серьезность: Уведомление
Сообщение: неопределенный индекс: pakar_username
Имя файла: m_pakar / edit_pakar.php
Номер строки: 20
Это мой взгляд:
<form method="post" role="form" action="<?=base_url()?>admin/m_pakar/edit_pakar?>">
<label>Username</label>
<input class="form-control" type="username" name="username" value="<?php echo $coba['pakar_username']?>" ><br>
<label>Password</label>
<input class="form-control" type="text" name="password" value="<?php echo $coba['pakar_password']?>"><br>
<label>Email</label>
<input class="form-control" type="email" name="email" value="<?php echo $coba['pakar_email']?>" ><br>
<button type="submit" class="btn btn-success">Update</button>
</form>
Мой контроллер:
public function edit_pakar($id){
$this->general->set_table('data_pakar');
$this->general->order('pakar_id', 'asc');
$datasend['coba'] = $this->general->get_result_array();
$datasave = array(
'pakar_username' => $this->input->post('username', TRUE),
'pakar_password' => md5($this->input->post('password', TRUE)),
'pakar_email' => $this->input->post('email', TRUE),
);
$this->general->set_table('data_pakar');
$this->general->where($datasave);
$this->general->update($datasave);
$dataview['content'] = $this->load->view('admin/m_pakar/edit_pakar', $datasend, TRUE);
$this->load->view($this->template, $dataview);
}
Что-то не так с моим кодом? не только pakar_username, но и все существующие данные в форме редактирования не отображаются.
Почему у вас весь этот раздутый код в вашем контроллере? Переместить материал базы данных в модель …
Исправление формы HTML:
<form method="post" role="form" action="<?=base_url()?>admin/m_pakar/edit_pakar">
Во-вторых, вы не выдвигаете детали в «datasave» к представлению, вы только выдвигаете «datasend», поэтому я настроил для «coba2», если вам нужен coba …
$datasend['coba'] = $this->general->get_result_array();
$datasave = array(
'pakar_username' => $this->input->post('username', TRUE),
'pakar_password' => md5($this->input->post('password', TRUE)),
'pakar_email' => $this->input->post('email', TRUE),
);
$datasend['coba2'] = $datasave;
Теперь отредактируйте поля ввода следующим образом:
value="<?php echo $coba2['pakar_username']?>"
Других решений пока нет …