Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Получить и передать путь к фото товара


Recommended Posts

Добрый день всем. Делаю свою страницу вывода нужной информации на печать, где надо вывести данные с \admin\controller\sale\order.php. Оттуда все что мне надо я вытянул, но не могу добраться до фото товара (отдельно контроллера своего нету, делаю все через order.php).

То есть, создана таблица, где должна быть фото товара и его параметры. Что только не пробовал, даже добавил в order.php контроллер:

$this->load->controller('catalog/product');
$data['kartinka'] = $product['image'];

Но в файле info.tpl и дальше $kartinka просто пустое значение

<img src="<?php echo $kartinka; ?>" style="float:left">

Моих знаний не хватает, я не могу понять как передать простое значение $product['image'] в другое место, отличающее от product.tpl.

Надіслати
Поділитися на інших сайтах


8 минут назад, Snoop3000 сказал:

Добрый день всем. Делаю свою страницу вывода нужной информации на печать, где надо вывести данные с \admin\controller\sale\order.php. Оттуда все что мне надо я вытянул, но не могу добраться до фото товара (отдельно контроллера своего нету, делаю все через order.php).

То есть, создана таблица, где должна быть фото товара и его параметры. Что только не пробовал, даже добавил в order.php контроллер:


$this->load->controller('catalog/product');
$data['kartinka'] = $product['image'];

Но в файле info.tpl и дальше $kartinka просто пустое значение


<img src="<?php echo $kartinka; ?>" style="float:left">

Моих знаний не хватает, я не могу понять как передать простое значение $product['image'] в другое место, отличающее от product.tpl.

По примеру как это в других местах сделанно

Надіслати
Поділитися на інших сайтах


$this->load->model('catalog/product');
$this->load->model('tool/image');

$product_info = $this->model_catalog_product($product_id);

if ($product_info) {
    $image = $product_info['image'];
    
    if (is_file(DIR_IMAGE . $image)) {
        $data['kartinka'] = $this->model_tool_image->resize($image, 100, 100);
    } else {
        $data['kartinka'] = $this->model_tool_image->resize('no_image.png', 100, 100);
    }
}

Как-то так...

  • +1 1
Надіслати
Поділитися на інших сайтах

Спасибо большое всем за ответы. Вы меня выручили. Вчера сидел до 3 часов ночи, а вы буквально пару строк и все готово!!! БЛАГОДАРЮ!

Взял за основу очень легкое в одну строку решение от @spectre (спасибо;-)) и опцию resize тоже подключил от совета@shoputils  (спасибо;-))

Вставил сначала весь кусок от @shoputils но получил ошибку, что не опознана переменная $product_info

 

В итоге реализовал вот так:

 

$this->load->model('tool/image');
    $image = $this->db->query("SELECT image FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$product['product_id'] . "'")->row['image'];
    $data['kartinka'] = $this->model_tool_image->resize($image, 40, 40);
Надіслати
Поділитися на інших сайтах


    $this->load->model('tool/image');

    $image = $this->db->query("SELECT image FROM " . DB_PREFIX . "product WHERE product_id = '" . (int)$product['product_id'] . "'")->row['image'];

    $data['kartinka'][] = array(

      'img' => $this->model_tool_image->resize($image, 40, 40)

    );

Немного не до конца я доделал все(( 

Правильно создан массив? чтобы в info.tpl получить значения массива? Бо сейчас только 1 фото грузит, а не всех товаров.

<?php $i = 0; foreach ($order['product'] as $product) { $i = $i + 1;?>

<img src="<?php echo $kartinka['img']; ?>" style="float:left">

 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.