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

добавление выбора валюты в админке

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

возникла необходимость вносить товар в разной валюте. т.е. я ввел цену товара, указал, в какой валюте указана цена и при сохранении формы а базу записалась указанная цена, но в основной валюте (т.е. той, которая стоит по умолчанию в админке), а не в той, что была была выбрана в форме. добавил соответствующий выпадающий список в поле цены (добавлениередактирование товара в админке), добавил дополнительное поле в таблице продуктов, в котором храниться идентификатор выбранной валюты. но не могу разобраться куда впихнуть код обработки измененной формы. полагаю, что в файл admincontrollercatalogproduct.php. изменения вносил в файл adminviewtemplatecatalogproduct_form.tpl следющие:sql-запросом получил в select, который добавил в форму, список всех валют. но теперь не знаю получить значение value этого списка и записать его в таблицу. знающие, направьте на путь истинный или хотя бы подскажите в каком направлении копать. может, кто-то сталкивался с этим? заранее благодарен

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


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

по идее лучше обработку делать в ..adminmodelcatalogproduct.php, именно туда летят данные из формы (функции addProduct, editProduct).И я бы на Вашем месте сделал следующим способом: раз у вас список валют есть (т.е. в скрипт передается код валюты), то при помощи функции$this->currency->convert($value, $from, $to) преобразуем в цену по умолчанию, ее и записываем в базу данных. Тогда никаких дополнительных полей в базе и дополнительной обработки при выводе этой валюты не будет.

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


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

спасибо, но в таком случае возникает проблема при изменении курса валюты. скажем, сегодня евро по одному курса, а завтра - по другому. поэтому необходимо еще добавить функцию изменения курса для всех товаров, цена которых указана в евро. но я совсем не вкуриваю структуру php-скриптов этого двига ;)

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


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

если не сложно, посоветуйте хотя бы литературу, с которой следует ознакоимтся

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


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

опенкарт использует MVC (model-view-controller) структуру, про нее вы можете много почитать в гугле, а в кратце:контроллер (это скрипты расположенные в папке controller) - здесь происходит вся логика страницы (генерация данных для вывода)вид (папка view) - это шаблон (гора html кода и чуток php)модель (папка model) - в основном запросы к базе данных.

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


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

да, спасибо, все это уже нашел. даже нашел конкретно опенкарт фреймворк, но там что-то не то... думал может что-то конкретное посоветуете

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


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

так, вродь разобрался со структурой более-менее. только не могу понять куда дописывать необходимый мне код. в файле admin/model/catalog/product.php в функции addProduct есть запрос (самый первый) на занесение данных в таблицу. как мне туда добавить мое значение из селекта? типа <имя_поля> = '" . $data['<имя_селекта>'] . "'? полагаю, аналогичные действия нужно произвести для редактирования товара. а где потом в контроллере эту переменную обрабатывать?

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


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

тему можно закрывать. спасибо, Fix305

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


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

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

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

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

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

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

Войти

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

Войти

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

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

×

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

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