Добрый день....
Подскажите плиз, как вывести значение (product_code) для каждой комбинации
При таком варианте он выводит только последий код для всех комбинаций
| Код | $product_c = db_get_field('SELECT product_code FROM ?:product_options_inventory WHERE combination=?i', $product_id);
|
Вот весь код:
| Код | function fn_exim_opts_get_product_options($product_id, $lang_code = '') { $pair_delimiter = ':'; $set_delimiter = '; '; $vars_delimiter = ',';
$result = array(); $options = fn_get_product_options($product_id, $lang_code); if (!empty($options)) { foreach ($options as $o) { $glob_opt = db_get_field("SELECT option_id FROM ?:product_global_option_links WHERE option_id = ?i AND product_id = ?i", $o['option_id'], $product_id);
$str = fn_exim_post_item_id($o['option_id'] . (empty($glob_opt) ? "" : "_L")) . "$o[option_name]$pair_delimiter $o[option_type]";
$variants = array(); if (!empty($o['variants'])) { foreach ($o['variants'] as $v) { $product_c = db_get_field('SELECT product_code FROM ?:product_options_inventory WHERE combination=?i', $product_id); $modifier = '[[m]' . $v['modifier_type'] . (($v['modifier'] >= 0) ? '+' : '-') . abs($v['modifier']) . ']'; $variants[] = fn_exim_post_item_id($v['variant_id']) . $v['variant_name'] . $product_c . $modifier; } $str .= '[' .implode($vars_delimiter, $variants). ']'; }
$result[] = $str; } }
return !empty($result) ? implode($set_delimiter, $result) : ''; }
|
Вот структура таблицы из которой нужно вывести product_code для каждой комбинации
product_id product_code combination_hash combination amount temp position 1 2346245 1601614369 1_7 50 N 6 1 21354 678527671 1_6 50 N 5 1 34534 2977485581 1_5 50 N 4 1 346 3330270107 1_4 50 N 3
|