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

Как сделать вывод в sucess.php формы с данными заказа ?


Recommended Posts

Как сделать вывода в sucess.php формы с данными заказа ?

 

аналогичную которая отображается в личном кабинете клиента ? или приходит на почту после нажатия на кнопку "подтвердить заказ"

 

 

заказ.jpg

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


Ок. каким контроллером описываются переменные в order.tpl ? 

 

ответ: catalog\model\checkout\order.php

Змінено користувачем NePridumal
Надіслати
Поділитися на інших сайтах


не хочу захламлять свой магазин лишними модулями. тем более все основное уже сделано. осталось лишь сделать вывод заказа

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


2 часа назад, chukcha сказал:

А.. так вам рассказать как єто сделать?

1500 р.

 

рассказать и показать) рублей за 500 устроило бы

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


5 минут назад, NePridumal сказал:

 

рассказать и показать) рублей за 500 устроило бы

 

http://eriusik.com/opencart-vyvod-dannyx-o-zakazannyx-tovarax-na-stranice-success/ там написано под 2.X, но логика осталась прежней.

Думаю проблем из php сделать twig не составит труда.

 

Согласен на 300р., т.к. показал, но не рассказал:grin:

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

4 часа назад, Bn174uk сказал:

 

http://eriusik.com/opencart-vyvod-dannyx-o-zakazannyx-tovarax-na-stranice-success/ там написано под 2.X, но логика осталась прежней.

Думаю проблем из php сделать twig не составит труда.

 

Согласен на 300р., т.к. показал, но не рассказал

 

по ссылке написано, в контроллер отвечающий на sucess.tpl - > /payment/payaftercheck.php 

добавить такой то код....

 

 

но такого контроллера нет в опен карт. на сколько я знаю контроллер отвечающий за sucess.tpl это sucess.php находящийся в catalog\controller\checkout\sucess.php

 

и уж подавно строки 

 

public function success() {

 

там нет

 

 

Змінено користувачем NePridumal
Надіслати
Поділитися на інших сайтах


 

Цитата

по ссылке написано, в контроллер отвечающий на sucess.tpl - > /payment/payaftercheck.php 

добавить такой то код....

 

Там написано "В контроллер отвечающий за success.tpl (checkout/success.tpl или /payment/payaftercheck.php)" 

 

Цитата

но такого контроллера нет в опен карт. на сколько я знаю контроллер отвечающий за sucess.tpl это sucess.php находящийся в catalog\controller\checkout\sucess.php

 

Если Вы сами знаете, что catalog\controller\checkout\sucess.php отвечает за страницу sucess.tpl, следовательно смотрим нужный Вам контроллер

 

Цитата

и уж подавно строки 

public function success() {

там нет

 

Все верно нету, но есть public function index() 

 

И да скорее всего это код вообще для 1.5.x . Но суть не для какой версии, а что примерно должно быть, чтобы получить то что Вы хотите.

В целом тот код рабочий, нужно его только привести к 3.х версии.

 

P.S. Подсказка http://prntscr.com/kk6sp4 вот сюда надо вставлять код 

 

P.S.S. а вообще научитесь гуглом пользоваться http://8uh.ru/opencart-i-ocstore/modul-dlya-vyvoda-dannykh-o-zakaze-na-st.html можно не ставить модуль, но посмотреть, что добавляет модификатор. Не смотря, то что написано для  2.x, в 3.x тоже самое будет работать.

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

Посмотрите на гитхабе как сделан вывод номера заказа в ocStore 3.0.2.0.

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

33 минуты назад, Bn174uk сказал:

 

 

Там написано "В контроллер отвечающий за success.tpl (checkout/success.tpl или /payment/payaftercheck.php)" 

 

 

Если Вы сами знаете, что catalog\controller\checkout\sucess.php отвечает за страницу sucess.tpl, следовательно смотрим нужный Вам контроллер

 

 

Все верно нету, но есть public function index() 

 

И да скорее всего это код вообще для 1.5.x . Но суть не для какой версии, а что примерно должно быть, чтобы получить то что Вы хотите.

В целом тот код рабочий, нужно его только привести к 3.х версии.

 

P.S. Подсказка http://prntscr.com/kk6sp4 вот сюда надо вставлять код 

 

P.S.S. а вообще научитесь гуглом пользоваться http://8uh.ru/opencart-i-ocstore/modul-dlya-vyvoda-dannykh-o-zakaze-na-st.html можно не ставить модуль, но посмотреть, что добавляет модификатор. Не смотря, то что написано для  2.x, в 3.x тоже самое будет работать.

 

все четко, работает. только если страницу обновить, данные уходят (

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


7 минут назад, NePridumal сказал:

все четко, работает. только если страницу обновить, данные уходят (

Естественно, сессия-то очищается.

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

и еще нужно в форму оплаты заказа (яндекс, карты) подтягивать сумму из заказа "итого". какой код вставлять и куда ? 

у меня вывод осуществляется формы через языковой файл success_yandex

 

форма яда выглядит так

 

https://money.yandex.ru/quickpay/shop-widget?writer=seller&amp;targets=Оплата заказа&amp;targets-hint=&amp;default-sum=<?php echo $product[‘total’]; ?>&amp;button-text=11&amp;payment-type-choice=on&amp;comment=on&amp;hint=%D0%92%D0%B2%D0%B5%D0%B4%D0%B8%D1%82%D0%B5%20%D0%BD%D0%BE%D0%BC%D0%B5%D1%80%20%D0%B7%D0%B0%D0%BA%D0%B0%D0%B7%D0%B0&amp;successURL=&amp;quickpay=shop&amp;account=410017335500444" width="423" height="331" frameborder="0" allowtransparency="true" scrolling="no"></iframe>'

 

 

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


вообщем вот одна из причин почему я не хочу использовать существующие модули.

 

нужно:

 

1) сделать сессию по выводу данных в sucess.php постоянной (даже после обновления страницы данные заказа должны сохраняться)

2) нужна подстановка из данных заказа в форму оплаты +% надбавки комиссии за выбранный способ оплаты, прямой перевод или на карту (сумма итого заказа)

3) подстановка номера заказа в поле комментария к заказу

4) автоматическое уведомление о том что заказ оплачен на почту клиенту

5) автоматическое уведомление о том что заказ оплачен на почту администратору 

 

Змінено користувачем NePridumal
Надіслати
Поділитися на інших сайтах


1 час назад, NePridumal сказал:

вообщем вот одна из причин почему я не хочу использовать существующие модули.

 

нужно:

 

1) сделать сессию по выводу данных в sucess.php постоянной (даже после обновления страницы данные заказа должны сохраняться)

2) нужна подстановка из данных заказа в форму оплаты (сумма итого заказа)

3) подстановка номера заказа в поле комментария к заказу

4) автоматическое уведомление о том что заказ оплачен на почту клиенту

5) автоматическое уведомление о том что заказ оплачен на почту администратору 

 

 

Это зря. Все это есть в моих модулях и даже больше.

 

1) нужно использовать доп сессию

У меня работает как надо

 

Пользуйтесь полноценным качественным модулем.

 

2)вы вписали в языковой файл переменные , а кто туда их передавать будет? 3)аналогично второму пункту 4)пишите callback который будет обрабатывать уведомления от платежной системы , плюс их надо ещё сделать на стороне плат системы , 5)аналогично пред пункту делаете отправку почты

 

У меня все пункты есть и без формы а с полноценной плат страницей где данные изменить нельзя , сумму и тд

 

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

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

 

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

Змінено користувачем NePridumal
Надіслати
Поділитися на інших сайтах


1 час назад, NePridumal сказал:

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

модули - это готовое решение, будет получше вашей писанины в файлах языка это точно

это все тот же код который вы писали бы вручную(имея опыт конечно и знания), просто запакован в удобную упаковку.

я отвечаю за свои модули, в которых все работает то что заявлено и есть поддержка и есть даже индивидуальные доработки если надо что-то особенное. Код моих модулей открыт, можно смотреть как сделано и если надо дорабатывать.

 

 

21 час назад, NePridumal сказал:

и еще нужно в форму оплаты заказа (яндекс, карты) подтягивать сумму из заказа "итого". какой код вставлять и куда ?

 

За вас делать никто не будет

а такие вопросы какой код куда вставлять ни в какие ворота не лезут

вам могут подсказать, направить при конкретных вопросах

 

я лишь показал что мои модули умеют то что вам надо, и посоветовал их использовать

так как при вашем уровне воплотить в жизнь ваше "Хочу-нужно" будет пока сложновато (ИМХО)

предлагать всем подряд мне их не надо, все и так вкурсе

Спасибо за внимание.

 

Если чем то задел, извиняйте

надумаете обращайтесь

Удачи!

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

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

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


Цитата

пишите callback который будет обрабатывать уведомления от платежной системы , плюс их надо ещё сделать на стороне плат системы , 5)аналогично пред пункту делаете отправку почты

 

callback всмысле отдельную страницу ? 

как того позволяет сделать яндекс. После оплаты пользователя переадресуют на страницу, в которой можно сделать оповещение о том что "ваш заказ оплачен, и уведомление отправлено на вашу почту".

 

+ в эту же страницу импортировать данные от успешной оплаты яндекс (возможно ли?)

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

 

callback.jpg

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


6 минут назад, NePridumal сказал:

 

callback всмысле отдельную страницу ? 

как того позволяет сделать яндекс. После оплаты пользователя переадресуют на страницу, в которой можно сделать оповещение о том что "ваш заказ оплачен, и уведомление отправлено на вашу почту".

 

+ в эту же страницу импортировать данные от успешной оплаты яндекс (возможно ли?)

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

 

callback.jpg

а что будет если ктото просто откроет эту страницу без оплаты или 100 раз откроет эту страницу и положит вашу почту?

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

создаете такую страницу, смотрите какие данные приходят. Обрабатываете , проверяете секрет, проверяете сумму которую оплатили и сумму заказа

 

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

  • 4 weeks later...

Ну вот я создал отдельный файл .php для проверки оплачен ли заказ или нет через яндекс.  На этой файл адресует всех клиентов которые оплачивают через модуль яндекс денег.

 

проверил его работу тут https://money.yandex.ru/myservices/online.xml

 

уведомления отправляются. Но

- как теперь сделать отправку письма на мейл клиента о том что заказ оплачен, и ничего не отправлять если оплата не прошла ?

- как лучше сделать вывод сообщения о том что оплата прошла успешно/или не прошла ?

- как изменить статус заказа после оплаты ? я так понимаю это  только через API возможно ?

 

<?

$hash = sha1($_POST['notification_type'].'&'.
$_POST['operation_id'].'&'.
$_POST['amount'].'&'.
$_POST['currency'].'&'.
$_POST['datetime'].'&'.
$_POST['sender'].'&'.
$_POST['codepro'].'&'.
'secret_code'.'&'.
$_POST['label']);

if ( $_POST['sha1_hash'] != $hash or $_POST['codepro'] === true or $_POST['unaccepted'] === true ) exit('error');

 

?>

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


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

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

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

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

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

Вхід

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

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

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