virt2/import/php/goodimg.php

44 lines
2.0 KiB
PHP
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?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/allimg';
$dst='/media/backup/goodimg';
//функция, что кладет список файлов в массив (чтобы тысячу раз не пробигать по миллионам файлов, загрузим их имена в массив, если оперативки хватит :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=array();
$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 ) ) :
//шерстим массив с файлами и если находим sku - копируем в goodimg
$y=0;
while ($y<$count):
if (find_txt($listfiles[$y], '_' . $postrow[$x]['sku'] . '.')==1){
if (copy ($src . '/' . $listfiles[$y] , $dst . '/' . $listfiles[$y]))unlink($src . '/' . $listfiles[$y]);
}
$y++;
endwhile;
$x++;
endwhile;
?>