C чего всё начинается..
1. С формы приходят такие данные.
$products = ;
array (
1 => // week day
array (
29 => '29', // product id
56 => '56',
48 => '48',
49 => '49',
),
2 =>
array (
49 => '49',
52 => '52',
),
)
$q = " Получаю все продукты на неделю";
$productCount = count($products) + 1;
for($d = 1; $d < $productCount; $d++){
foreach($products[$d] as $key => $value) {
$row = $this->_db->GetRowAsArray($res);
$compare_link = array( // формирую массив с формы
'CAT_ID' => $arrayOfCategories[($d-1)]['ID'],
'PRODUCT_ID' => $value,
'MENU_ID' => $menu_id,
'PRODUCT_COUNT' => $product_count[$d][$value],
'IS_FREE' => $is_free[$d][$value],
'FREE_COUNT' => $free_count[$d][$value],
'BREAKFAST' => $breakfast[$d][$value],
'LUNCH' => $lunch[$d][$value],
'SUPPER' => $supper[$d][$value],
'WDAY' => $d
);
Они идентичны по ключам с бд и формы массивы.
array (
'CAT_ID' => '7',
'PRODUCT_ID' => '29',
'MENU_ID' => '47',
'PRODUCT_COUNT' => '110',
'IS_FREE' => '1',
'FREE_COUNT' => '100',
'BREAKFAST' => '1',
'LUNCH' => '0',
'SUPPER' => '0',
'WDAY' => '1',
);
// array
array (
'CAT_ID' => '7',
'PRODUCT_ID' => '29',
'MENU_ID' => '47',
'PRODUCT_COUNT' => '110',
'IS_FREE' => '1',
'FREE_COUNT' => '100',
'BREAKFAST' => '1',
'LUNCH' => NULL,
'SUPPER' => NULL,
'WDAY' => 1,
);
На этом этапе ступор пробовал по всякому извращатся всё не то
1. У продуктов есть свой порядок расположение по id на странице.
2. Если в базе добавлены 3 продукта с номерами 29, 48, 49
3. А в форме я решил добавить ещё один и этот один может быть так 29, 56, 48, 49 , уже не соотношение.
4. Мне нужна проверка существует ли такой продукт в этот день. если нет то просто его добавлять если да то сравнивать параметры надо и если что-то расходится update.
Может кто-то поделится размышлениями на этот счет)