virt2/import/php/loadimg.php

70 lines
2.2 KiB
PHP
Raw Normal View History

<?php
//копируем файлы в движок и заполняем БД
$set['bd_name']='virtual';/*Название Базы*/
$set['bd_host']='localhost';/*адрес сервера*/
$set['bd_user']='root';/*Логин MySQL*/
$set['bd_pass']='admin';/*Пароль MySQL*/
mysql_connect( $set['bd_host'], $set['bd_user'], $set['bd_pass']) or die('Не могу подключиться к мускулу, проверьте логин и пароль');/*Подключаемся к СУБД*/
mysql_query ('SET NAMES utf8');/*чтобы корректно отображались данные в бд*/
mysql_select_db ( $set['bd_name'] );
$src='/media/backup/goodimg';
$dst='/home/virtual/www/virtual-nt.ru/image/catalog/auto';
$sql='catalog/auto';
//функция, что кладет список файлов в массив (чтобы тысячу раз не пробигать по миллионам файлов, загрузим их имена в массив, если оперативки хватит :D )
function list_file ( $dir ){if ( $dir [ strlen( $dir ) - 1 ] != '/' ){$dir .= '/';}
$nDir = opendir( $dir );
while(false!==($file=readdir($nDir))){if($file!="." AND $file != ".."){if ( !is_dir( $dir . $file ) ){
$files [] = $file;}}}closedir( $nDir );return $files;
}
//поиск по тексту
function find_txt($txt, $str){
$pos1 = stripos($txt, $str);
if ($pos1 === false) return 0;
else
return 1;
}
$listfiles=list_file($src);
$count=count($listfiles);
$result = mysql_query('SELECT * FROM `oc_product` WHERE `status`="1" AND `image` =""');
while ( @$postrow[] = mysql_fetch_array($result));
$x=0;
while ( $x < mysql_num_rows ( $result ) ) :
$y=0;
while ($y<$count):
if (find_txt($listfiles[$y], '_' . $postrow[$x]['sku'] . '.')==1){
if (!$postrow[$x]['image']) copy ($src . '/' . $listfiles[$y] , $dst . '/' . $postrow[$x]['sku'] . '.jpg');
$sql='catalog/auto/' . $postrow[$x]['sku'] . '.jpg';
//проверяем, чтоб два раза не грузить
if (!$postrow[$x]['image']) mysql_query('UPDATE `oc_product` SET `image`="' . $sql . '" WHERE `product_id` = "' . $postrow[$x]['product_id'] . '"' );
break;
}
$y++;
endwhile;
$x++;
endwhile;
unset ($postrow);
?>