Не зарегистрирован
Вход
Забыли пароль?
Регистрация
Подписаться
Сэкономьте время — перед вопросом на форуме узнайте, как найти ответ быстрее
По техническим проблемам необходимо обращаться в Консультационный центр

Поиск по форуму: 

Приглашаем в блог Amiro.CMS. Регулярные обзоры, опыт, решения, практикумы.

Форум  ->   Разработка плагинов, вопросы по API  ->  id товара

Раздел для разработчиков. Обсуждение создания плагинов, вопросы и пожелания по API Amiro.CMS

Добавлено: 19.03.12 16:03:42 #1



Регистрация: 14.03.12
Сообщений: 31


Обратиться по имени

какой переменной выводиться id товара?
$id? $itemid ?
делаю функцию вывода нужных мне цен товара.
как мне вывести цену конкретного товара?)
что вписать в строку $result=mysql_query("select price2 from cms_es_items where id=*";
мой код
function price1() {
	
	$result=mysql_query("select price2 from cms_es_items where id= ");
  $content="";
  for ($i=0; $i<mysql_num_rows($result); $i++) {
	  $row=mysql_fetch_array($result);
	  $content=$content."<br/><br/>
	  <strong>цена розничная:</strong> ".round($row['price2'],2)." руб.<br/><br/>
	  	  <strong>цена опт:</strong> ".round($row['price3'],2)." руб.<br/><br/>";
	  }
return $content;
}

echo price1();



Добавлено: 20.03.12 07:55:39 #2




Регистрация: 03.07.07
Сообщений: 940


Обратиться по имени

Это код без использования API. Не надо так делать, это плохо. Смотрите как надо работать с АПИ, чтение моделей данных:

$oEshopItem = AMI::getResourceModel('eshop/table')->find($id);
echo "Price 2 = ".$oEshopItem->price2."<br>";

Ну и, плюс, помните про кеширование результатов. Если Вы отлаживаете код с выключенным кешированием, будьте готовы, что результаты будут закеширвоаны для всех других пользователей, у кого работает кеш.



Готовые модули для Амиро - от бесплатных модулей до модулей импорта и геотаргетирования
Более 65 модулей, более 1100 внедрений модулей.
Добавлено: 20.03.12 11:56:27 #3



Регистрация: 14.03.12
Сообщений: 31


Обратиться по имени

спасибо за код)
но ка только я создаю функцию с ним
а потом вывожу ее (стоит добавить в шаблон ##setvar @custom_output = cstOutput()##
и все. зайти на товар не возможно, пробовал с кешем и без него



Добавлено: 20.03.12 15:16:54 #4




Регистрация: 03.07.07
Сообщений: 940


Обратиться по имени

Смотрите лог _admin/_logs/err.log - там должна была быть опечатка, которую я сделал. Код писал "из головы", не проверяя его. Было неверное имя модели, вот так посмотрите:

$oEshopItem = AMI::getResourceModel('eshop_item/table')->find($id);
echo "Price 2 = ".$oEshopItem->price2."<br>";

Кроме этого переменная $id не определена в функции, ее, следует, наверное, либо скидывать id товара параметром:
##setvar @custom_output = cstOutput(id)##

либо получать из реестра, если данная функция вызывается в деталях страницы:
AMI_Registry::get('page/itemId')



Готовые модули для Амиро - от бесплатных модулей до модулей импорта и геотаргетирования
Более 65 модулей, более 1100 внедрений модулей.
Добавлено: 20.03.12 15:31:19 #5



Регистрация: 14.03.12
Сообщений: 31


Обратиться по имени

да $id не определенна собственно в этом я и застрял, не знаю просто как ее реализовать, буду дальше ковырять, сейчас попробую применить какой то из способов указанный вами) спасибо что отвечаете, и помогаете!!!



Добавлено: 20.03.12 15:53:17 #6



Регистрация: 14.03.12
Сообщений: 31


Обратиться по имени

первый способ подошел. ток еще добавил
function cstOutput(&$id) переменную айди в функцию. и заработало)



Добавлено: 20.03.12 16:30:53 #7



Регистрация: 14.03.12
Сообщений: 31


Обратиться по имени

все хорошо но теперь оно цену эту выводит вверху страницы)))
есть идея?) куда бы я его не вставлял)
вывожу путем

##setvar @custom_output = cstOutput(id)##
##custom_output##



Добавлено: 21.03.12 11:19:08 #8




Регистрация: 03.07.07
Сообщений: 940


Обратиться по имени

Замените в функции echo на return.



Готовые модули для Амиро - от бесплатных модулей до модулей импорта и геотаргетирования
Более 65 модулей, более 1100 внедрений модулей.
Добавлено: 21.03.12 11:31:39 #9



Регистрация: 14.03.12
Сообщений: 31


Обратиться по имени

спасибо) как раз приехал на работу с этой мыслей)





Создать новую тему

Всего тем: 6629
Всего сообщений: 27746
Всего зарегистрированных пользователей: 48914
Последний зарегистрированный пользователь: user74945798