Здраствуйте дорогие форумчани! Сижу 5 день и ни как нерешу задачу перелапатил пол интернета но ненашол решения своей проблеми а имено:
Вивести(создать) многомерний масив из 4-х таблиц БД (как би получилось но несовсем)
1табл = orders_user_name (все дание заказчиков)(для теста 3строки)
2табл = orders (все товари заказчиков)(для теста 8строк)
3табл = rozmir (дополнительние дание каталога товара)(для теста 4строк)
4табл = catalog (каталог з товаром)(для теста 3строк)
PHP:
скопировать код в буфер обмена
function getOrders(){ global $a;//соидинение з базой даних $orders = db2Array($result);//здесь переважу в асоциативний масив foreach($orders as $order){//создаю 2 уровень масива $orderinfo["oun_id"] = $order["oun_id"]; //... куча строк $orderinfo["oun_dropshiper"] = $order["oun_dropshiper"]; //тут проблема описана в низу LEFT JOIN orders ON o_datetime={$orderinfo["oun_datatime"]} AND o_customer= '{$order["oun_ses"]}' LEFT JOIN rozmir ON o_big=r_id $orderinfo["goods"] = db2Array($result);//виводит 3 уровень массива $allorders[] = $orderinfo; } return $allorders; }
ПРОБЛЕМА!!! не знаю что туда указать что би вивело верно весь масив при грамотном воде одной из 4 указаних таблиц возникаєт посвоему своя неточность.
1. При таблице "orders_user_name"(тест 3 строки) - 3 уровень масива умножаеться на то количество сколько в таблице строк(в даний момент 3).
2. При таблице "orders"(тест 8 строк) - к 3 уровню масива добавляет пустие ключи (есть4 то дабавит+4(пустих)=8; есть 3 то добавит+5(пустих)=8 и так далие)(в тесте там 8строк потому и равно 8(а в робочем будет несколько тисяч))
3. При таблице "rozmir"(тест 4 строки) - тоже самое что и приведущие только равно не 8 а 4
4. При таблице "catalog"(тест 3 строки(товара)) - идет сравнение что есть в 3-м уровне масива(а он состоит из заказаного товара пользователем) и книму добавляет весь отсуствующий асортимент товара з таблици catalog. Пример: если 1 товар значить добавит 2 остальних(пустишки). Если 2 повторящихся значит добавит отсуствующие два. если 2 товара то добавит один отсуствуещий.
5. Пробовал таблицу пустишку так вобща 3уровень масива пустой.
Вот такой масив формируеться как я и хотел но там проблема
Array
(
[0]=>array([0]=>""...[goods]=>array([0]=>...[n]=>""(тут все проблеми описание верху)))
[1]=>array([0]=>""...[goods]=>array([0]=>...[n]=>""(тут все проблеми )))
[2]=>array([0]=>""...[goods]=>array([0]=>...[n]=>""(тут все проблеми )))
)
Пробовал функцию GROUP_CONCAT но она виводит масив так
Array(
[0]=>array([0]=>""... GROUP_CONCAT[ключ]=>(и перечисляе весь столбик таблици БД через запятую а не как отдельное канкретно указаное значения).
|