Используя CodeIgniter, я создаю административную область, где я могу создавать сноски для любой данной линейки продуктов.Множественные условия цикла для набора флажков
HTML
<p>Choose Product Line</p>
<label><input type="checkbox" name="productline[]" value="1" />Product One</label>
<label><input type="checkbox" name="productline[]" value="2" />Product Two</label>
<label><input type="checkbox" name="productline[]" value="3" />Product Three</label>
<label><input type="checkbox" name="productline[]" value="4" />Product Four</label>
PHP
for ($i = 0; $i < count($this->input->post('product[]')); $i++)
{
$line__id = $this->input->post('product')[$i];
$footnote_data = array(
'line__id' => $line__id,
'code' => $this->input->post('footnotecode'),
'text' => $this->input->post('footnotetext'),
'status' => $this->input->post('status'),
'createdon' => date('Y-m-d H:i:s')
);
error_log(print_r($footnote_data, true));
}
Какой будет что-то вроде этого:
LOG:
Array
(
[line__id] => 1
[code] => ABC123
[text] => Hello World
[status] => 1
[createdon] => 2014-12-31 22:28:59
)
Array
(
[line__id] => 2
[code] => ABC123
[text] => Hello World
[status] => 1
[createdon] => 2014-12-31 22:28:59
)
....
Все в порядке, я просматриваю каждую линейку продуктов, которая была выбрана.
Как вы можете видеть в массиве $footnote_data
, у меня есть несколько других полей. Это простые текстовые поля ввода и 1: 1 с текущей итерацией цикла $i
.
У меня также есть 2 других варианта выбора. Вы должны выбрать линейку продуктов (вверху), затем ввести код и текст соответствующей сноски. Затем вам нужно выбрать то, что типа сноски это.
HTML
<p>Footnote Type</p>
<label><input type="checkbox" name="footnotetype[]" value="awesome" />Awesome</label>
<label><input type="checkbox" name="footnotetype[]" value="cool" />Cool</label>
<label><input type="checkbox" name="footnotetype[]" value="average" />Average</label>
я могу выбрать как можно больше типов сносок, которые я хочу для текущей сноски я создаю. Я просто не уверен, что лучший способ погрузиться во вторую серию флажков (тип).
Я пробовал вложенную петлю в пределах основного цикла товарной линии, но я не получил результат (ы), который я искал. Если я вхожу результат я ищу, это то, что это будет выглядеть так:
ВЫХОДА
Array
(
[line__id] => 2
[type] => Awesome
[code] => ABC123
[text] => Hello World
[status] => 1
[createdon] => 2014-12-31 22:28:59
)
Array
(
[line__id] => 2
[type] => Cool
[code] => ABC123
[text] => Hello World
[status] => 1
[createdon] => 2014-12-31 22:28:59
)
Array
(
[line__id] => 3
[type] => Average
[code] => ABC123
[text] => Hello World
[status] => 1
[createdon] => 2014-12-31 22:28:59
)
....
Посмотрите, как та же линия продукт может иметь несколько типов сносок? Фактическая запись будет/может быть одинаковой для каждой выбранной линейки продуктов. Только тип может отличаться.
Еще одна мысль, которую я имел - после того, как начальный цикл завершен, - и у меня есть идентификатор сноски для вновь созданной сноски, я поворачиваю направо и обновляю db для каждого типа сноски? Я говорю себе, в кругах ...
Моя структура БД выглядит следующим образом:
DATABASE
footnote_id
type_id // this is the question
text
code
status
createdon
Спасибо за вашу помощь!
Спасибо так много! Это именно толкание, которое мне нужно было сделать. – Damon
Рад, что я мог бы помочь ^^ –