Я использую Codeigniter MVC Framework, я пытаюсь вставить 14 строк в БД. Кроме того, у меня есть 14 вызовов для модели в моем контроллере. Однако каким-то образом он вставляется только в воскресенье утром. Это почему? * Представление, которое я разместил, является лишь небольшой частью, которая повторяется каждый день (понедельник-воскресенье) и (утро, вечер).
Моя база данных выглядит следующим образом:
+ - ------- + --------- + -------- +
| день | время | user_id |
+ --------- + --------- + -------- +
| Воскресенье | утро | 1 |
+ --------- + --------- + -------- +
| Понедельник | вечер | 1 |
+ --------- + --------- + -------- +
Модель
public function saveFinalShifts($data) {
$this->db->db_debug = FALSE;
$error = NULL;
if (!$this->db->insert_batch('final_shifts', $data)) {
$error = $this->db->error();
}
return $error;
}
controller
public function saveFinalShifts(){
$data = array();
$dates = $this->input->post('date');
$days = $this->input->post('day[]');
$times = $this->input->post('time[]');
$worker_names = $this->input->post('worker_name[]');
if(is_array($dates)){
foreach ($dates as $key => $date){
$data[] = array (
'date' => $date,
'day' => $days[$key],
'time' => $times[$key],
'worker_name' => $worker_names[$key],
);
}
}
$this->Shifts_model->saveFinalShifts($data);
}
View
<div class="warp">
<?php echo form_open('Shifts/savefinalShifts'); ?>
<table class="manage">
<th>
<input type="date" name="date[]">
</th>
<td>
<input type="hidden" value="sunday" name="day[]">
<input type="hidden" value="norning" name="time[]">
<?php
foreach ($sunday_morning as $shift):?>
<br><label><input class="get_value" type="checkbox" name="worker_name[]" value="<?php echo $shift['fullname'];?>">
<?php echo $shift['fullname'];
?></label>
<?php endforeach; ?>
</td>
<td>
<input type="hidden" value="monday" name="day[]">
<input type="hidden" value="morning" name="time[]">
<?php
foreach ($monday_morning as $shift):?>
<br><label><input class="get_value" type="checkbox" name="worker_name[]" value="<?php echo $shift['fullname'];?>">
<?php echo $shift['fullname'];
?></label>
<?php endforeach; ?>
</td>
</table>
<input type="submit" class="submit-btn" value=”send">
<div>
Это вывод, если я распечатываю массив данных:
Array
(
[0] => Array
(
[date] => 2020-05-10
[day] => sunday
[time] => morning
[worker_name] => Victoria
)
)