загрузка из csv в базу каталога, при повторах категорий льет неправильно категории

Статус
В этой теме нельзя размещать новые ответы.

zagrenat

Гуру форума
Регистрация
26 Дек 2006
Сообщения
245
Реакции
68
есть csv файл, есть две категории к примеру
холодильники
и
встройка/холодильники
на данный момент категории путаются и все льется либо в первую либо во вторую,
что не так сделала не понимаю ( и как исправить тоже.


PHP:
				$subcat = explode("|",$data[2]);
				for ($k = 0;$k < count($subcat);$k++){
					if ($k == 0){
						$r = mysql_query("SELECT `cat_id` FROM `ecs_category` WHERE cat_name LIKE '%".escstr($subcat[$k])."%'");
							if (@mysql_num_rows($r) == 0){
								$r = mysql_query("INSERT INTO `ecs_category` SET cat_name = '".escstr($subcat[$k])."', parent_id = 0, sort_order = 0, show_in_nav = 0, show_in_index = 0, is_show = 1, grade = 0, filter_attr = 0");
								echo "Не найден cat_id `{$subcat[$k]}`. Категория создана автоматически<br/>\n";
								$parent_id = @mysql_insert_id($r);
							} else {
								$parent_id = mysql_result($r,0);
							}
					} else {
						$r = mysql_query("SELECT `cat_id` FROM `ecs_category` WHERE cat_name LIKE '%".escstr($subcat[$k])."%' AND parent_id = ".$parent_id);
						if (@mysql_num_rows($r) == 0){
							$r = mysql_query("INSERT INTO `ecs_category` SET cat_name = '".escstr($subcat[$k])."', parent_id = ".$parent_id.", sort_order = 0, show_in_nav = 0, show_in_index = 0, is_show = 1, grade = 0, filter_attr = 0");
							echo "Не найден cat_id `{$subcat[$k]}`. Категория создана автоматически<br/>\n";
							$parent_id = @mysql_insert_id($r);
						} else {
							$parent_id = mysql_result($r,0);
						}
					}
				}
				
				$cat_id = $parent_id;
 
Ну так а в CSV как что и как лежит?
 
А не легче будет загрузить csv-файл в базу данных при помощи LOAD DATA INFILE?
 
Ну так а в CSV как что и как лежит?

в csv лежит
PHP:
goods_sn = '{$data[0]}', 
goods_name = '{$data[1]}', 
cat_id = $cat_id,  $data[2]
shop_price = ". escstr($data[3]) .", 
goods_brief = '". escstr($data[4]) ."', 
goods_desc = '". escstr($data[5]) ."', 
goods_thumb = 'images/thumb_img/". escstr($data[6]) ."', 
goods_img = '/images/goods_img/". escstr($data[7]) ."', 
$brand = $data[8]
goods_number = ". escstr($data[9]) ."");

А не легче будет загрузить csv-файл в базу данных при помощи LOAD DATA INFILE?
может и легче, но незнаю как
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху