Новое в codeigniter и пытается раздобыть проверенные строки из пользовательской формы.Codeigniter обновляет данные таблицы mysql из формы с помощью флажка
мой взгляд генерирует форму с данными MySQL, как показано ниже:
<?php
echo form_open('masterdata/update_customers');
?>
<table>
<tr>
td> </td><td>Customer Name</td><td>postalcode</td>
<tr>
<?php if(isset($records)) : foreach ($records as $row) : ?>
<tr>
<td>
<input type=checkbox name="editcustomer[]" id="editcustomer[]" value="<?php echo $row->id ?>">
</td>
<td>
<input type="text" name="customername_<?php echo $row->id ?>" id="customername_<?php echo $row->id ?>" value="<?php echo $row->customer_name ; ?>" >
</td>
<td>
<input type="text" name="postalcode_<?php echo $row->id ?>" id="postalcode_<?php echo $row->id ?>" value="<?php echo $row->postalcode ; ?>" >
</td>
</tr>
<?php endforeach ; ?>
</table>
<input type="submit" value="Update Selected">
<?php else : ?>
<h2> No Records Found</h2>
<?php endif; ?>
<?php echo form_close(); ?>
Это работает отлично, как я получаю мое уникальное имя и значение для всех полей ввода.
Моя проблема теперь пытается передать выбранные флажки и там значения для codeigniter и получить их для обновления каждой строки.
традиционно я бы использовал foreach($_POST['editcustomer'] as $editcustomer){
, но наклоняю, чтобы моя голова обходилась с этим в кодеригнере.
моя функция контроллера, update_customers
на данном этапе является очень простой:
function update_customers()
{
$this->form_validation->set_rules("customer_name","`Customer Name`","required|min_length[6]|xss_clean");
$this->form_validation->set_rules("postalcode","`Postal Code`","required|xss_clean|min_length[6]");
if ($this->form_validation->run() == FALSE){
$data["message"]="";
$data['title']="Master Data Home Page";
$this->load->view("master_data/view_master_data_header",$data);
$this->load->view("master_data/view_master_data_nav");
$this->load->view("master_data/view_content_master_data_manage_customers");
$this->load->view("master_data/view_master_data_footer");
} else {
$data = array(
'customer_name' => $this->input->post('customer_name'),
'postalcode' => $this->input->post('postalcode'),
);
$this->model_master_data->update_customer_records($data);
$this->customers_updated();
}
}
Моя функция модели, update_customer_records
является:
function update_customer_records($data)
{
$this->db->where('id',$this->input->post('id'));
$this->db->update('customers',$data);
}
Я знаю, что есть совсем немного не хватает здесь, как обработка только строки проверены. но не уверен, как добавить это. Во-вторых, мое уникальное имя и идентификатор сгенерированы, по моему мнению: name="customername_<?php echo $row->id ?>" id="customername_<?php echo $row->id ?>"
Как получить обновление, применимое к уникальному имени ввода формы? Мне нужно добавить префикс customername_ и postalcode_ к значению input-> post (?)?
Любое направление или помощь здесь будут оценены. спасибо миллион заранее.