Перейти к содержанию

Рекомендуемые сообщения

Доброго дня!

помогите подключить таблицу buklet_photo (id,text,url) из бд к карточке товара.

 

1.catalog/model/catalog/product.php - к этой функции подключаться,или нужно создать новую?

 

public function getProduct($product_id)

 

 

2.../catalog/controller/product/product.php -  как получить данные из модели?

 

3..../template/product/product.tpl - тут уже проще.)

 

Движок ocStore 2.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1. Можно поправить getProduct, но только если собираетесь выводить эти данные в категориях и других страницах сайта. т.к. getProduct используется везде, лучше ее не перегружать лишними запросами. Так что желательно создать отдельную функцию.

2. $this->model_catalog_product->getProduct($product_id);

3. Вывод

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Смотря что Вы хотите делать с этими данными,  как вариант можно сделать 

 

Модель (Это только вывод данных, там надо еще удаления, копирование, редактирование и добавление )

publick function getBukletPhoto(product_id) 
{
    $sql = "SELECT text, url FROM `". DB_PREFIX . "buklet_photo` WHERE product_id = '" . (int) $product_id "'";
    return $this->db->query($sql)->rows;  
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

видно же по "тексту" - нет у него в таблице "product_id".

вообще не понятно, чего надо и что есть.

лучше бы описал исходные данные (без своей таблицы) и что надо с ними делать.

может вообще не в ту сторону двигаешься.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я тогда просто процитирую

 

 

 

из бд к карточке товара.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

фтопку.

что там за данные?

зачем/почему они в отдельной таблице?

насколько отличаются?

может в product засунуть?

может в product_description?

а вдруг вообще по шаблону можно генерировать прямо в шаблоне карточки товара?

итпд...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

@afwollis, При выводе определенной  опций в (id="product">)  в карточке товара ,нужно  подгрузить цикл foreach c данными из б.д.

 

Что-то не так делаю,помогите разобраться.Ошибка invalid argument supplied for foreach() in product_product.tpl

 

catalog/model/catalog/product.php

public function getbukletphoto($product_id) {
$query =$this->db->query ("SELECT ID,text,URL FROM " . DB_PREFIX . "buklet_photo");

return $query->rows;
}

 

 

/catalog/controller/product/product.php

$product_examples = $this->model_catalog_product->getbukletphoto($product_id);

foreach ($product_examples as $product_example )
{
$buklet[]=array (
'id' => $product_example ['id'],
'text' => $product_example ['text'],
'url' => $product_example ['url']
);
}

 

/template/product/product.tpl

<?php foreach ($buklet as $product_example) { ?>
<?php echo $product_example['id']; ?>
<?php echo $product_example['text']; ?>
<?php } ?>

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

afwollis,

Данные такие:

id =>Описание => изображение

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Данные такие:

id =>Описание => изображение

//$buklet[]=array(
$data['buklet'] = array(
Переменные из контроллера в шаблон передаются через массив $data, а в 1.5.x через $this->data
  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

catalog/model/catalog/product.php

 public function getbukletphoto($product_id) {
$query =$this->db->query ("SELECT ID,text,URL FROM " . DB_PREFIX . "buklet_photo");

это выбирает абсолютно все данные из таблицы (у всех товаров одинаковое выводит).

если так - бд вообще не нужна.

если каждому товару надо привязать своё - не хватает столбца в таблице (или таблицы связей) и условия в запросе (условий/итпд).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все огромное спасибо,получилось.Тему Закрываем. :-)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.