рекурсивное заполнение базы данных многомерным массивом

Я хотел бы рекурсивно получить доступ к полю id и libelle для заполнения моей базы данных. Я попробовал следующий скрипт: я заполняю только первый уровень id и libelle. (Где idTypeCaategorie = 0). Это всего лишь часть моего массива.

Я хочу заполнить только два поля в моей таблице данных «menu1» = «libelle» и «id» = id, и для каждого подвыборки libelle было бы здорово связать родительскую libelle с дочерней libelle. –

мое datatable stucure:

столбцы структуры >>>>> id (int (10) | newspaper_index (= 8) | menu_level (int) | menu1 ( ) | menu2 ( ) | menu3 ( ) | menu4 ( ) | menu5 ( ) | menu6 ( ) | menu7 (*) |; его меню menu1 – это libelle первого уровня, а menu2 – menu7 – дети libelle

пример 1: Univers Bebe (menu1) (id: …..) menu_level = 1

пример 2: Univers Bebe (menu1)> Lait et cereale (menu2) (id: ….) menu_level = 2

пример 3: Univers Bebe (menu1)> Lait et cereale (menu2)> lait 1er age (menu3) (id: …..) menu_level = 3

* = varchar Я хочу поместить информацию из массива в мою базу данных с помощью этой выше структуры Пример Массив:

 массив
 (
     [0] => Массив
         (
             [id] => 288
             [libelle] => Univers Bà © bà ©
             [idTypeCategorie] => 0
             [nomImage] => 1905.jpg
             [ponderation] => 1
             [fils] => Массив
                 (
                     [0] => Массив
                         (
                             [id] => 2228
                             [libelle] => Laits & cà © rà © ales
                             [idTypeCategorie] => 1
                             [nomImage] => 2002.png
                             [ponderation] => 1
                             [mea] => 2067
                             [fils] => Массив
                                 (
                                     [0] => Массив
                                         (
                                             [id] => 1024
                                             [libelle] => Lait 1er à ¢ ge
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 1
                                             [nbProduits] => 9
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [1] => Массив
                                         (
                                             [id] => 1025
                                             [libelle] => Lait 2Úme à ¢ ge
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 2
                                             [nbProduits] => 10
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [2] => Массив
                                         (
                                             [id] => 1026
                                             [libelle] => Круассаны
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 3
                                             [nbProduits] => 19
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [3] => Массив
                                         (
                                             [id] => 290
                                             [libelle] => Petit dà © jeuner
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 4
                                             [nbProduits] => 9
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [4] => Массив
                                         (
                                             [id] => 2595
                                             [libelle] => Cà © rà © ale
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 5
                                             [nbProduits] => 10
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                 )

                         )

                     [1] => Массив
                         (
                             [id] => 2230
                             [libelle] => Repas de Bà © bà ©
                             [idTypeCategorie] => 1
                             [nomImage] => 1974.png
                             [ponderation] => 2
                             [mea] => 2482
                             [fils] => Массив
                                 (
                                     [0] => Массив
                                         (
                                             [id] => 3651
                                             [libelle] => Репас à base de là © gumes
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 3
                                             [nbProduits] => 28
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [1] => Массив
                                         (
                                             [id] => 3656
                                             [libelle] => Puré e pour bà © bà ©
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 4
                                             [nbProduits] => 8
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [2] => Массив
                                         (
                                             [id] => 3652
                                             [libelle] => Репас à base de viande
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 5
                                             [nbProduits] => 29
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [3] => Массив
                                         (
                                             [id] => 3653
                                             [libelle] => Репас Ã base de poisson
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 6
                                             [nbProduits] => 16
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [4] => Массив
                                         (
                                             [id] => 3654
                                             [libelle] => Репас Ã base de volaille
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 7
                                             [nbProduits] => 18
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [5] => Массив
                                         (
                                             [id] => 3657
                                             [libelle] => Repas BIO
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 8
                                             [nbProduits] => 4
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                 )

                         )

                     [2] => Массив
                         (
                             [id] => 3660
                             [libelle] => Diner & Soupe
                             [idTypeCategorie] => 1
                             [nomImage] => 1989.png
                             [ponderation] => 3
                             [mea] => 3764
                             [fils] => Массив
                                 (
                                     [0] => Массив
                                         (
                                             [id] => 3661
                                             [libelle] => Pour le diner
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 1
                                             [nbProduits] => 16
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [1] => Массив
                                         (
                                             [id] => 3662
                                             [libelle] => Soupe pour bà © bà ©
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 2
                                             [nbProduits] => 9
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                 )

                         )

                     [3] => Массив
                         (
                             [id] => 2227
                             [libelle] => Горец и десерты
                             [idTypeCategorie] => 1
                             [nomImage] => 2003.png
                             [ponderation] => 4
                             [mea] => 309
                             [fils] => Массив
                                 (
                                     [0] => Массив
                                         (
                                             [id] => 294
                                             [libelle] => Jus de fruits
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 1
                                             [nbProduits] => 1
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [1] => Массив
                                         (
                                             [id] => 1021
                                             [libelle] => Puré e de fruits
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 2
                                             [nbProduits] => 26
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [2] => Массив
                                         (
                                             [id] => 3663
                                             [libelle] => Компот
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 3
                                             [nbProduits] => 18
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [3] => Массив
                                         (
                                             [id] => 1023
                                             [libelle] => Бисквит
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 4
                                             [nbProduits] => 3
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [4] => Массив
                                         (
                                             [id] => 1022
                                             [libelle] => Yaourt pour bà © bà ©
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 5
                                             [nbProduits] => 8
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [5] => Массив
                                         (
                                             [id] => 3664
                                             [libelle] => Десерт CrÚme
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 6
                                             [nbProduits] => 11
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                 )

                         )

                     [4] => Массив
                         (
                             [id] => 295
                             [libelle] => Кушетообразные
                             [idTypeCategorie] => 1
                             [nomImage] => 2029.png
                             [ponderation] => 5
                             [mea] => 1713
                             [fils] => Массив
                                 (
                                     [0] => Массив
                                         (
                                             [id] => 2576
                                             [libelle] => 3 - 6 кг
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 1
                                             [nbProduits] => 7
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [1] => Массив
                                         (
                                             [id] => 308
                                             [libelle] => 2 - 9 кг
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 2
                                             [nbProduits] => 6
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [2] => Массив
                                         (
                                             [id] => 309
                                             [libelle] => 7 - 18 Kg
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 3
                                             [nbProduits] => 10
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [3] => Массив
                                         (
                                             [id] => 310
                                             [libelle] => 9 - 25 Kg
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 4
                                             [nbProduits] => 13
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [4] => Массив
                                         (
                                             [id] => 311
                                             [libelle] => Кулонеты
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 6
                                             [nbProduits] => 10
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [5] => Массив
                                         (
                                             [id] => 3829
                                             [libelle] => Лингетки
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 7
                                             [nbProduits] => 18
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                 )

                         )

                     [5] => Массив
                         (
                             [id] => 296
                             [libelle] => Туалетная вода
                             [idTypeCategorie] => 1
                             [nomImage] => 2031.png
                             [ponderation] => 6
                             [mea] => 968
                             [fils] => Массив
                                 (
                                     [0] => Массив
                                         (
                                             [id] => 312
                                             [libelle] => Лингетки
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 1
                                             [nbProduits] => 18
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [1] => Массив
                                         (
                                             [id] => 313
                                             [libelle] => Savons & gels lavants
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 3
                                             [nbProduits] => 7
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [2] => Массив
                                         (
                                             [id] => 314
                                             [libelle] => Autres соглашается
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 5
                                             [nbProduits] => 6
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [3] => Массив
                                         (
                                             [id] => 4183
                                             [libelle] => Coton pour bà © bà ©
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 6
                                             [nbProduits] => 4
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                 )

                         )

                     [6] => Массив
                         (
                             [id] => 2229
                             [libelle] => Puà © riculture
                             [idTypeCategorie] => 1
                             [nomImage] => 2030.png
                             [ponderation] => 7
                             [mea] => 36176
                             [fils] => Массив
                                 (
                                     [0] => Массив
                                         (
                                             [id] => 2732
                                             [libelle] => HygiÚne et bain pour bà © bà ©
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 7
                                             [nbProduits] => 2
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                 )

                         )

                 )

         )

     [1] => Массив
         (
             [id] => 2214
             [libelle] => Fruits & là © gumes
             [idTypeCategorie] => 0
             [nomImage] => 1916.png
             [ponderation] => 2
             [fils] => Массив
                 (
                     [0] => Массив
                         (
                             [id] => 1136
                             [libelle] => Фрукты
                             [idTypeCategorie] => 1
                             [nomImage] => 1928.png
                             [ponderation] => 1
                             [mea] => 202
                             [fils] => Массив
                                 (
                                     [0] => Массив
                                         (
                                             [id] => 1139
                                             [libelle] => Pommes & Poires
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 1
                                             [nbProduits] => 5
                                             [fils] => Массив
                                                 (
                                                 )

                                         )

                                     [1] => Массив
                                         (
                                             [id] => 1137
                                             [libelle] => Арумес
                                             [idTypeCategorie] => 2
                                             [nomImage] => 
                                             [ponderation] => 2
                                             [nbProduits] => 3
                                             [fils] => Массив
                                                 (
                                                 )

                                         )


 
for($i=0; $i< $nb_elem ; $i++){ // while we're not at the end of big array foreach($tab_categories as $key => $objet){//for each element(objet) which has menu and foreach menu we fill database with id and libelle $id = $tab_categories[$i] -> id; $menu1 = utf8_decode($tab_categories[$i] -> libelle); //echo $id."|".$menu1."\n"; $req="INSERT IGNORE INTO menu_itm (id, menu1) VALUES('".$id."','".addslashes($menu1)."');"; //addslashes permet de gérer les caractère spéciaux $req=$bd->prepare($req); $req->execute(); } } 

Я попробовал это:

function pour_un_objet ($ obj) {
foreach ($ obj -> Object as $ cle => $ array) {// … if (is_array ($ array) && count ($ array)> 0) {// si le champ de l'objet courant est un tableau et si ce dernier n'est pas vide pour_un_fils ($ array); return true; // fils exploitable} else return false; // fils un exploitable,

}

function pour_un_fils ($ input) {array_walk_recursive ($ input, function ($ input) {// для каждого термина – таблица, в то время как мы не находимся в конце таблицы, как только найдем метку и идентификатор

для ($ ср = 0; $ ср

  foreach($input as $subkey ){// input is an array son subkey is his field (id, libelle ... ) if($subkey=="libelle" || $subkey=="id") get_menu($id,$term);// only if you arrive on a field or libelle id return true; } else return false; } } 

} Любая помощь большая оценка.

Это схема того, что вы должны делать:

 function ParseArray(array){ foreach (array as $item) { sql statement if($item->fils != null) ParseArray($item->fils) } } 

Хорошо, просто написал этот класс, похоже, работает с включенными тестовыми данными.

  <?php class recursiveGrab{ public $output; public $target; public $input; private $tempSub = array(); public function __construct ($subject, $target){ $this->input = $subject; $this->masterData = $subject; $this->target = $target; $this->getTopLevel(); } private function getTopLevel($level = null){ ($level == null) ? $dataset =$this->input : $dataset = $level; $target = $this->target; $i = 0; foreach($dataset as $key=>$value){ foreach($target as $k=>$needle){ if($key == $needle && !is_array($value)){$this->tempSub[$needle]= $value;}; } } if(count($this->tempSub) >= 1 ){ $this->output[] = $this->tempSub; } if(is_array($value) && count($value) >= 1){ $this->downLevel($value); } } private function downLevel($value){ $this->getTopLevel($value); } } //testData $tst = array('staff' => array( 'id'=>'1', 'name'=>'Director', 'subordinates'=>array( 'id'=>'2', 'name'=>'upperManagement', 'subordinates'=>array( 'id'=>'3', 'name'=>'Office Manager', 'subordinates'=>array( 'id'=>'4', 'name'=>'office staff', 'subordinates'=>array( ), array( 'id'=>'5', 'name'=>'it manager', 'subordinates'=>array() ) ) ) ) ) ); $mapped = new recursiveGrab($tst, array('id', 'name')); $twoD = $mapped->output; $values = ""; $rec = count($twoD); for($i=0;$i<$rec;$i++){ $values .=" (?,?)"; } $sql = "INSERT INTO myDB (id, name) VALUES".$values; echo $sql."<br>"; $counter = 1; foreach ($twoD as $row){ echo "\$stmt->bindParam({$counter}, {$row['id']}, PDO::PARAM_INT)<br>"; $counter++; echo "\$stmt->bindParam({$counter}, {$row['name']}, PDO::PARAM_STR)<br>"; $counter++; } ?> 

Выходные данные следующие:

 INSERT INTO myDB (id, name) VALUES (?,?) (?,?) (?,?) (?,?) (?,?) $stmt->bindParam(1, 1, PDO::PARAM_INT) $stmt->bindParam(2, Director, PDO::PARAM_STR) $stmt->bindParam(3, 2, PDO::PARAM_INT) $stmt->bindParam(4, upperManagement, PDO::PARAM_STR) $stmt->bindParam(5, 3, PDO::PARAM_INT) $stmt->bindParam(6, Office Manager, PDO::PARAM_STR) $stmt->bindParam(7, 4, PDO::PARAM_INT) $stmt->bindParam(8, office staff, PDO::PARAM_STR) $stmt->bindParam(9, 5, PDO::PARAM_INT) $stmt->bindParam(10, it manager, PDO::PARAM_STR) 

Рекурсивная прогулка существующего многодорожечного дерева.

Протестировано в версии PHP 5.3.29 и более поздних версиях.

Код:

  • Выходы в базу данных,
  • Работает с «деревом» как с массивом, а не stdClass объектами stdClass .

  • Добавлен скрипт 'build menu from database'.

Он использует функции, а не классы, но был организован в отдельные файлы.

Источник:

  • Обработать данные JSON: Q29792309-index-recursive-database-fill.php
  • Деревенская прогулка: Q29792309-tree-walk.php
  • Выберите пункты меню: Q29792309-select-query.php
  • Вставить пункт меню: Q29792309-insert-query.php
  • Пункт меню обновления: Q29792309-update-query.php
  • Таблица меню усечения: Q29792309-truncate-table.php
  • Данные теста: Q29792309_json.txt
  • Таблица базы данных q29792309 DDL

  • Создайте меню из базы данных: Q29792309-index-build-tree-from-database.php

Чтобы сделать «древовидную прогулку» полезной, мы будем называть ее функцией «закрытия», которая имеет следующую сигнатуру:

 function ($childNode, $parentNode); 

Код:

Функция, которая выполняет работу по «хождению» по дереву:

 /** * Apply processing to the current node and it's parent node. * * @param node $currentNode * @param node $parentNode * @param closure $processNode * @return void This is all 'side effects' */ function walkTree($currentNode, $parentNode, /* closure */ $processNode) { // call the closure - but only if the parent is set... if (!empty($parentNode)) { $processNode($currentNode, $parentNode); } // process the children of this node foreach ($currentNode['fils'] as $childNode) { walkTree($childNode, $currentNode, $processNode); // recurse for every node } return; } 

Пример «закрытия» для вставки узла меню в базу данных:

 /* -------------------------------------------------------------------------- * Closure to be called for every node with a parent in the tree * * It will insert the data into the database using a prepared query */ $processNode = function ($childNode, $parentNode) { insertMenuItem($parentNode['id'], $childNode['id'], $childNode['libelle']); }; 

Как использовать процедуры

1) Создать глобальную базу данных mysqli connection

 $DB_HOST = "localhost"; $DB_USER = "test"; $DB_PASSWORD = "test"; $DB_TO_USE = "testmysql"; $db = new mysqli($DB_HOST, $DB_USER, $DB_PASSWORD, $DB_TO_USE); 

2) Включить / Определить процедуры обработки дерева

 /** ----------------------------------------------------------------- * Tree Process Functions... * * function walkTree($currentNode, $parentNode, $processNode); */ include __DIR__ .'/Q29792309-tree-walk.php'; /* -------------------------------------------------------------------------- * Closure to be called for every node with a parent in the tree * * It will insert the data into the database using a prepared query */ $processNode = function ($childNode, $parentNode) { insertMenuItem($parentNode['id'], $childNode['id'], $childNode['libelle']); }; 

3) Включить процедуры обработки базы данных

 /** ----------------------------------------------------------------- * Query functions... */ /** * function selectMenuList($whereClause = '', $valueList = array(), $orderBy = '') */ // example: $rows = selectMenuList('menu_id = ? OR parent_menu_id = ?', array(1024, 2229)); /** * displayMenuList($rows); */ include __DIR__ .'/Q29792309-select-query.php'; /** * function insertMenuItem($parentMenuId, $menuId, $title) */ include __DIR__ .'/Q29792309-insert-query.php'; /** * function updateMenuItem($parentMenuId, $menuId, $title) */ include __DIR__ .'/Q29792309-update-query.php'; /** * function truncateTable($tableName = 'q29792309') */ include __DIR__ .'/Q29792309-truncate-table.php'; 

4) Обработать дерево

 /* ------------------------------------------------------------------- * Process all the data */ // ------ Load the JSON data $json = file_get_contents('Q29792309_json.txt'); $sourceTree = json_decode($json, true); // show test data... echo $EOL, ' -------- Source Tree Start ---------'; echo '<pre>'; print_r($sourceTree); echo '</pre>'; echo $EOL, ' -------- Source Tree End ---------'; // Empty the table... truncateTable('q29792309'); echo $EOL, ' -------- Tree walk Start ---------'; walkTree($sourceTree, null, $processNode); echo $EOL, ' -------- Tree walk End ---------'; // display the inserted rows $rows = selectMenuList(); displayMenuList($rows); exit(); // redundant but a clue when reading where the main processing ends 

Примеры тестовых данных:

 Array ( [id] => 0 [libelle] => Root [idTypeCategorie] => [nomImage] => [ponderation] => [fils] => Array ( [0] => Array ( [id] => 288 [libelle] => Parent: 0 to here: 288 [idTypeCategorie] => 0 [nomImage] => 1905.jpg [ponderation] => 1 [fils] => Array ( ... 

Выход: введенные данные

 -------- select rows Start --------- Parent Menu Id: 0 Menu Id: 288 Title: Parent: 0 to here: 288 isDeleted: 0 Parent Menu Id: 0 Menu Id: 289 Title: Parent: 0 to here: 289 isDeleted: 0 Parent Menu Id: 288 Menu Id: 2228 Title: Parent 288 to here: 2228 isDeleted: 0 Parent Menu Id: 288 Menu Id: 2229 Title: Parent 288 to here: 2229 isDeleted: 0 Parent Menu Id: 2228 Menu Id: 1024 Title: Parent 2228 to here: 1024 isDeleted: 0 Parent Menu Id: 2228 Menu Id: 1025 Title: Parent 2228 to here: 1025 isDeleted: 0 Parent Menu Id: 2229 Menu Id: 1036 Title: Parent 2229 to here: 1036 isDeleted: 0 -------- select rows End --------- -------- select rows End --------- 

Это сделано, я нашел другой способ получить данные, которые я хотел.

 function RecursiveAddOfProducts($listeSon,$listParents_libelle) { $result = array();$Product=array(); if($listeSon) { foreach($listSon as $key => $currentNode { if(!empty($currentNode)) { // If the product has a son $newParent_libelle = $listParents_libelle; $newParent_libelle[] = utf8_decode($currentNode['libelle']); $newParent_id=$listParents_id; $newParent_id[] = $currentNode['id']; $produit=array_merge($newParent_id,$newParent_libelle); $menu_niveau=count($Product)-1; ProductInsert($Product,$menu_niveau); RecursiveAddOfProducts($currentNode['fils'], $newParent_libelle); } } } 

} $ listeParents = array ();

 RecursiveAddOfProducts($tab_categories,$listParents); 

Моя функция вставки работает так:

 function ProductInsert($tab,$menu_niveau){ $menu_list = ""; $column_value = ""; for($i=1;$i<= $menu_level ;$i++){ if($menu_list != '') $menu_list .= ', '; $menu_list .= "menu".$i; if($column_value != '') $column_value .= ', '; $column_value.= "'".addslashes($tab[$i])."'"; //var_dump($column_value); } $req="INSERT IGNORE INTO menu_itm (id, ".$menu_list.",menu_niveau) VALUES(".$tab[0].",".$column_value.",'".$menu_level."')"; echo $req."</br>"; sql($req); 

}

Я хотел бы, чтобы все поблагодарили вас за вашу помощь, все люди, которые внесли свой вклад, оказали большую помощь. Я многому научился. Спасибо Райан Винсент и за вашу помощь, вы дали много времени, я благодарен вам за это.)