73 lines
3.4 KiB
PHP
Executable File
73 lines
3.4 KiB
PHP
Executable File
<?php
|
||
unset($postrow);
|
||
//отключаем все продукты
|
||
//mysql_query( 'UPDATE `oc_product` SET `status` = "0"' );
|
||
|
||
$file='import.xml';
|
||
$count=0;
|
||
$start=0;
|
||
$end=0;
|
||
$handle = fopen("import.xml", "r");
|
||
while (!feof($handle)) {//перебираем типы товара
|
||
$buffer = fgets($handle, 4096);
|
||
if (find_txt($buffer, '<Elements>')==1)$start=1;//стартуем
|
||
if (find_txt($buffer, '</Elements>')==1)$end=1;//проверяем, не пора ли завязывать с чтением категорий
|
||
if ($start==1 && $end==0){
|
||
if (find_txt($buffer, '</Group>')==1)$postrow[$count]['group']=trim(replacer_param($buffer));
|
||
if (find_txt($buffer, '</Name>')==1)$postrow[$count]['name']=trim(replacer_param($buffer));
|
||
if (find_txt($buffer, '</NameFull>')==1)$postrow[$count]['namefull']=trim(replacer_param($buffer));
|
||
if (find_txt($buffer, '</Code>')==1)$postrow[$count]['code']=trim(replacer_param($buffer));
|
||
if (find_txt($buffer, '</CodeNumber>')==1)$postrow[$count]['codenumber']=trim(replacer_param($buffer));//артикул sku
|
||
if (find_txt($buffer, '</Amount>')==1)$postrow[$count]['amount']=trim(replacer_param($buffer));
|
||
if (find_txt($buffer, '</Price>')==1)$postrow[$count]['price']=trim(replacer_param($buffer));
|
||
if (find_txt($buffer, '</InternetPrice>')==1)$postrow[$count]['InternetPrice']=trim(replacer_param($buffer));
|
||
if (find_txt($buffer, '</Element>')==1)$count++;
|
||
}
|
||
}
|
||
fclose($handle);
|
||
//print_r($postrow);
|
||
//читаем блядский массив, пишем в базу не достающее или обновляем то, что есть
|
||
for($i = 0; $i < $count; $i++){/*показываем, пока колличество не иссякло*/
|
||
if (@$postrow[$i]['name']){
|
||
$lock='';
|
||
unset($a);
|
||
unset($m);
|
||
//Запрашиваем из БД по коду категорию, смотрим, есть ли lock==1 если нет - обнволяем или создаем
|
||
$a['code']=$postrow[$i]['code'];
|
||
$lock=$db->get_val('m_tovar', $a, 'lock');
|
||
echo "\n\r" . $lock . "\n\r";
|
||
$m['naim']=$postrow[$i]['name'];
|
||
$m['ostatok']=$postrow[$i]['amount'];
|
||
$m['cena']=$postrow[$i]['price'];
|
||
$m['akccena']=$postrow[$i]['InternetPrice'];
|
||
$m['code']=$postrow[$i]['code'];
|
||
$m['m_groupe']='0';
|
||
$m['akccena']='0';
|
||
$m['img']='';
|
||
$m['public']='1';
|
||
$m['opis']='';
|
||
$m['act']='1';
|
||
$m['artikul']=$postrow[$i]['codenumber'];
|
||
$m['parent']=$postrow[$i]['group'];
|
||
$m['keywords']='Купить ' . $m['naim'] . ' не дорого в нижнем тагиле';
|
||
$m['description']='Купить ' . $m['naim'] . ' не дорого в нижнем тагиле';
|
||
|
||
# 1) - нет lock: создаем
|
||
if ($lock=='') $db->add('m_tovar', $m);
|
||
# 2) - если есть но равен нулю - обновляем
|
||
if ($lock==0){
|
||
#узнаем ИД записи и обновляем
|
||
$id=$db->get_val('m_tovar', $a, 'id');
|
||
$m2['cena']=$postrow[$i]['price'];
|
||
$m2['akccena']=$postrow[$i]['InternetPrice'];
|
||
$m2['ostatok']=$postrow[$i]['amount'];
|
||
$m2['public']=1;
|
||
$db->update('m_tovar', $id, $m2);
|
||
unset($m2);
|
||
}
|
||
# 3) - если есть но равен 1 - не трогаем
|
||
}
|
||
}
|
||
|
||
include '4.php';
|
||
?>
|