Добавление изображения к товару.

#
Добавление изображения к товару.
Если у товара нет изображения, каким образом ее к нему добавить?
Предполагаю, что методом InsertItem, но при заполнении путей к  изображению, картинка не появляется.

Может есть какая-то особенность ?
#
Re: Добавление изображения к товару.
Dremlin писал(а):
Если у товара нет изображения, каким образом ее к нему добавить?
- самый простой способ - загрузить через раздел администрирования.
Dremlin писал(а):
Предполагаю, что методом InsertItem
- т.е. нужна программная реализация?Dremlin писал(а):
но при заполнении путей к изображению, картинка не появляется
- приведите ваш код.
#
Re: Добавление изображения к товару.
На данный момент такой код:  Файл test.php лежит в корне сайта.
require_once($_SERVER['DOCUMENT_ROOT'].'/main_classes.php');


$admin = new Admin();

// Проверка авторизации пользователя.
$admin->admin_session_valid('shop');
$kernel = & singleton('kernel');
// Инсталляция всех модулей ядра.
$kernel->LoadModules(!isset ($_REQUEST['JsHttpRequest']));

// При экспорте в CML отключаем компрессию
// В СПИСКЕ КОНСТАНТ DISABLE_COMPRESSION НЕ ДОЛЖНО БЫТЬ!!!
if ((isset($_REQUEST['export_items'])
|| isset ($_REQUEST['action']) && $_REQUEST['action'] == '4')
&& !defined('DISABLE_COMPRESSION'))
{
   define('DISABLE_COMPRESSION', true);
}

// Инициализация CURRENT_SITE и констант.
$admin->admin_init();

$shop = new shop();

$shop_item_catalog_image = '';
$shop_item_catalog_small_image = '';
$param['path_target_big_image'] = $shop_item_catalog_image;
$param['path_target_small_image'] = $shop_item_catalog_small_image;

$param['shops_id']=4;
$param['item_id']=91378;
$param['name']='KA-900022 DR';

$param['path_source_small_image']= $_SERVER['DOCUMENT_ROOT'].'/files1.jpg';
$param['path_source_big_image']= $_SERVER['DOCUMENT_ROOT'].'/files1.jpg';

$param['use_big_image'] = true;
$shop->InsertItem($param );
#
Re: Добавление изображения к товару.
формируется один файл большой (покореженный)  и один малый (пустой).

но на изначальном файле источнике права сбрасываются полностью.

это как можно поправить?
#
Re: Добавление изображения к товару.
Dremlin писал(а):
формируется один файл большой (покореженный) и один малый (пустой)
- передайте еще и следующие параметры:
$param['max_width_big_image'] значение максимальной ширины большого изображения
$param['max_height_big_image'] значение максимальной высоты большого изображения
$param['max_width_small_image'] значение максимальной ширины малого изображения;
$param['max_height_small_image'] значение максимальной высоты малого изображения;

Dremlin писал(а):
но на изначальном файле источнике права сбрасываются полностью
- у вас, видимо, устаревшая версия система. На сколько я помню, данная проблема исправлялась ранее. Если у вас версия не последняя, то обновитесь.
#
Re: Добавление изображения к товару.
Да, действительно, обновил до последней версии, не было нескольких обновлений  и стало лучше. НО выдаются такие предупреждения

Warning: copy(/var/www/clients/client1/web73/web/upload/shop_4/9/2/3/item_92328//shop_items_catalog_image92328.jpg) [function.copy]: failed to open stream: Permission denied in /var/www/clients/client1/web73/web/modules/Kernel/Kernel.class.php on line 4553
Файл не загружен!

Warning: imagejpeg() [function.imagejpeg]: Unable to open '/var/www/clients/client1/web73/web/upload/shop_4/9/2/3/item_92328//small_shop_items_catalog_image92328.jpg' for writing: Permission denied in /var/www/clients/client1/web73/web/modules/Kernel/Image.class.php on line 465


И файлы которые создаются не имеют прав. Стоят прочерки. После выставления прав в ручную, все работает.

Может что-то можно поправить, что бы в созданных файлах, права выставлялись автоматически?

#
Re: Добавление изображения к товару.
Извените я наверное пишу не по теме!но каким образом залить базу товаров которая в формате CSV что бы она залилась корректно с разбитием на подразделы в каталоге?вот сам сайт studio-vid.ru и посмотрите в каталоге что получилось!!как сделать что бы нормально залилась база?
#
Re: Добавление изображения к товару.
Dremlin, причина ошибок, очевидно, в том, что у вас неверно настроены права на одну из директорий пути /upload/shop_4/9/2/3/item_92328/. Так, например, если директория /upload/ загружалась вами на сервер по FTP, то она будет иметь соответствующего владельца(пользователя FTP-аккаунта). При этом при определенных правах на нее другие пользователи(в том числе, например, и пользователь, из-под которого работает ваш веб-сервер, а значит и запускаемый PHP-скрипт) не смогут записывать в нее информацию. В любом случае данный вопрос(настройки владельцев и прав файлов) непосредственного отношения к системе управления не имеет. Вам нужно корректно настроить права на директории системы управления в соответствии с вашей ОС.
#
Re: Добавление изображения к товару.
Holl писал(а):
каким образом залить базу товаров которая в формате CSV что бы она залилась корректно с разбитием на подразделы в каталоге?
- рекомендации по составлению CSV-файла корректной структуры см. в нашем руководстве пользователя на стр. 93.
#
Re: Добавление изображения к товару.
Dremlin, причина ошибок, очевидно, в том, что у вас неверно настроены права на одну из директорий пути /upload/shop_4/9/2/3/item_92328/. Так, например, если директория /upload/ загружалась вами на сервер по FTP, то она будет иметь соответствующего владельца(пользователя FTP-аккаунта). При этом при определенных правах на нее другие пользователи(в том числе, например, и пользователь, из-под которого работает ваш веб-сервер, а значит и запускаемый PHP-скрипт) не смогут записывать в нее информацию. В любом случае данный вопрос(настройки владельцев и прав файлов) непосредственного отношения к системе управления не имеет. Вам нужно корректно настроить права на директории системы управления в соответствии с вашей ОС.


вряд ли, потому что из того же скрипта, после обновления ставлю две строки
chmod () с правами и путем полученным через GetItemDir и права нормально проставляются.
в общем, можно сказать что разобрался..
Авторизация