Joomla 4. Компонент K2 и форк K2ForJ4 (18 янв 2024)

Если вас, как и меня, достало выслушивать (вычитывать) бесконечные обещания разработчика K2 опубликовать версию компонента K2 под Joomla 4 (без чего невозможно реализовать апгрейд from Joomla 3 to Joomla 4) - воспользуйтесь форком K2ForJ4. Который в данный момент установлен и без каких-либо проблем работает на этом веб-сайте.

Яндекс.Деньги: прием платежей на сайте

Больше
6 года 9 мес. назад #1 от serge
Один из способов проверки HTTP-уведомления от Яндекса. Иллюстрация к материалу Яндекс.Деньги: прием платежей на сайте :

Code:
$secret_key = '**********************************'; // секретное слово, полученное на Яндексе. // возможно пригодятся: // $_POST['operation_id'] - номер операция // $_POST['amount'] - количество денег, которые поступят на счет получателя // $_POST['withdraw_amount'] - количество денег, которые будут списаны со счета покупателя // $_POST['datetime'] - тут понятно, дата и время оплаты // $_POST['sender'] - если оплата производится через Яндекс Деньги, то этот параметр содержит номер кошелька покупателя // $_POST['label'] - лейбл, который мы указывали в форме оплаты // $_POST['email'] - email покупателя (доступен только при использовании https://) $sha1 = sha1( $_POST['notification_type'] . '&'. $_POST['operation_id']. '&' . $_POST['amount'] . '&643&' . $_POST['datetime'] . '&'. $_POST['sender'] . '&' . $_POST['codepro'] . '&' . $secret_key. '&' . $_POST['label'] ); if ($sha1 != $_POST['sha1_hash'] ) { // если верификация не пройдена, выполняем этот код, любое действие exit(); } // если проверка прошла успешно, любое действие exit();

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 1
Больше
6 года 9 мес. назад - 6 года 9 мес. назад #2 от serge
Еще вариант (найдено в Сети):

Code:
//yandex http-notification $secret='XXXXXXXXXXXXXXXXXXXXXXX'; if ($_POST) { $params='notification_type&operation_id&amount&currency&datetime&sender&codepro'; $params=explode('&',$params); $forHASH=array(); foreach($params as $key=>$p) { if (isset($_POST[$p])) array_push($forHASH,$_POST[$p]); } if ($secret!="") array_push($forHASH,$secret); if (isset($_POST['label'])) array_push($forHASH,$_POST['label']); $forHASH=implode('&',$forHASH); if ($_POST['sha1_hash']===sha1($forHASH) && $_POST['codepro']!=='true') { //transact ok. //////////////////////////////// /////// Платёж прошел ///////// //////////////////////////////// $status="Успешно!"; $id=$_POST['label']; $money=$_POST['amount']; $tranid=$_POST["operation_id"]; $flow="in"; $paysystem="ym"; $ymfrom=$_POST['sender']; /*что-то делаем....*/ //////////////////////////////// } }

А я смогу! - А поглядим! - А я упрямый!
Последнее редактирование: 6 года 9 мес. назад пользователем serge.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Работает на Kunena форум