Передача значения checkbox в базу данных
хочу реализовать слайдер в шаблоне Opencart. На первом слайде контактная форма, на втором просто текст с кнопкой. Не понимаю в чем ошибка, может кто сталкивался, подскажите.
Мои действия:
- добавила новый столбец в базу данных
Имя: forms; Тип: int(11); По умолчанию: NULL.
- в admin/model/design/banner.php
а) в функцию addBanner
if (isset($data['banner_image'])) {
foreach ($data['banner_image'] as $language_id => $value) {
foreach ($value as $banner_image) {
$this->db->query("INSERT INTO " . DB_PREFIX . "banner_image SET banner_id = '" . (int)$banner_id . "', language_id = '" . (int)$language_id . "', title = '" . $this->db->escape($banner_image['title']) . "', link = '" . $this->db->escape($banner_image['link']) . "', forms = '" . $this->db->escape($banner_image['forms']) . "', image = '" . $this->db->escape($banner_image['image']) . "', sort_order = '" . (int)$banner_image['sort_order'] . "'");
}
}
}
б) в функцию editBanner
if (isset($data['banner_image'])) {
foreach ($data['banner_image'] as $language_id => $value) {
foreach ($value as $banner_image) {
if (!array_key_exists('forms', $banner_image)) $banner_image['forms'] = 0;
$this->db->query("INSERT INTO " . DB_PREFIX . "banner_image SET banner_id = '" . (int)$banner_id . "', language_id = '" . (int)$language_id . "', title = '" . $this->db->escape($banner_image['title']) . "', link = '" . $this->db->escape($banner_image['link']) . "', forms = '" . $this->db->escape($banner_image['forms']) . "', image = '" . $this->db->escape($banner_image['image']) . "', sort_order = '" . (int)$banner_image['sort_order'] . "'");
}
}
}
с) в функцию getBannerImages
foreach ($banner_image_query->rows as $banner_image) {
$banner_image_data[$banner_image['language_id']][] = array(
'title' => $banner_image['title'],
'link' => $banner_image['link'],
'forms' => $banner_image['forms'],
'image' => $banner_image['image'],
'sort_order' => $banner_image['sort_order']
);
}
в /admin/controller/design/banner.php
$data['banner_images'][$key][] = array( 'title' => $banner_image['title'], 'link' => $banner_image['link'], 'forms' => $banner_image['forms'], 'image' => $image, 'thumb' => $this->model_tool_image->resize($thumb, 100, 100), 'sort_order' => $banner_image['sort_order'] );в admin/language/ru-ru/design/banner.php
$_['entry_forms'] = 'Добавить форму закза';в admin/view/template/design/banner_form.twig
<td class="text-left" style="width: 30%;"> {% if forms %} <input type="checkbox" name="banner_image[{{ language.language_id }}][{{ image_row }}][forms]" value="1" checked="checked" /> {% else %} <input type="checkbox" name="banner_image[{{ language.language_id }}][{{ image_row }}][forms]" value="0" /> {% endif %} </td>
При сохранении чекбокс не сохраняется, его значение не передается в базу данных, я новичок, очень нужна помощь.