Код (Text): у меня есть форма <form id="payment" name="payment" method="post" action="https://sci.interkassa.com/" enctype="utf-8"> <input type="hidden" name="ik_co_id" value="КЛЮЧ" /> <input type="hidden" name="ik_pm_no" value="ID_4233" /> <input type="hidden" name="ik_am" value="100.00" /> <input type="hidden" name="ik_cur" value="RUB" /> <input type="hidden" name="ik_desc" value="Event Description" /> <input type="submit" value="Pay"> </form> МНЕ НАДО ПРЕДАТЬ ЕЕ ТАКИМ МЕТОДОМ // Рассчёт стоимости Interkassa if ($subalias == '.домен.su') { if ($_POST['paymethod'] == 'Interkassa') { $hash = md5($shop_id.":".$sum.":".$payment_id.":".$payment_desc.":".$_SESSION['auth']['id']); //, где $shop_id - идентификатор кассы $sum - сумма платежа (в формате 0.00) $payment_id - номер заказа $payment_desc - описание платежа // бд $insertrow = $db->insert("INSERT INTO shop_payments (id_user, count, sum, type, status, domain, paymethod) VALUES (?, ?, ?, ?, ?, ?, ?)", array($_SESSION['auth']['id'], $_POST['period'], $sum, 'Регистрация', 'Не оплачен', $_POST['alias'], 'Interkassa')); // End бд предаем форму в ней та и проблема! die('https://sci.interkassa.com/?&ik_sign='.$hash.'&ik_am='.$sum.'&ik_pm_no='.$payment_id.'&ik_desc='.$payment_desc.$_SESSION['auth']['id'].'&ik_account='.$_SESSION['auth']['id'].'&ik_type=reg&ik_idorder='.htmlspecialchars($insertrow).''); } } // Рассчёт стоимости Interkassa ГЕДЕ id кассы передаю в форме запроса в параметре "ik_co_id". $shop_id = IK_CO_ID; // "секретный ключ" запись в config.php с кофига и будм брать ключ // Данные Interkassa define("INTERKASSA_PAY", 1); // 1 - включено, 0 - выключено define("IK_CO_ID", "КЛЮЧ"); //KEY Идентификатор кассы Interkassa //Данные Interkassa в result.php $dataSet = $_POST; if (!$dataSet) exit('Ошибка платежа'); $shop_id = "IK_CO_ID"; //В данном случае используется "Секретный ключ" unset($dataSet['ik_sign']); // удаляем из данных строку подписи ksort($dataSet, SORT_STRING); // сортируем по ключам в алфавитном порядке элементы массива array_push($dataSet, $shop_id); // добавляем в конец массива "секретный ключ" $signString = implode(':', $dataSet); // конкатенируем значения через символ ":" $sign = base64_encode(md5($signString, true)); // берем MD5 хэш в бинарном виде по сформированной строке и кодируем в BASE64 if ($sign != $_POST['ik_sign']) exit('Ошибка обработки платежа');
Зарегистрировался с надеждой что тут хоть кто то живой есть на форуме и подскажет как мне эту строчку сделать правильно. Выложил исходный код. die('https://sci.interkassa.com/?&ik_sig...ayment_id.'&ik_desc='.$payment_desc.$_SESSION['auth']['id'].'&ik_account='.$_SESSION['auth']['id'].'&ik_type=reg&ik_idorder='.htmlspecialchars($insertrow).'');
@rekrutrekrut99 может сама интеркаса даёт PHP код в качестве примера? https://github.com/CMSInterkassa/PHP_components4developers
Здравствуйте, дорогой друг. Да ! ссылка интересная , но там api мне надо SCI. Но у меня что нужно уже есть, код я в студию предоставил, чтобы ясно понимали проблему, и подписал что значит. Так вот, как видно по исходникам код есть мне нужно лишь ту часть что интеркаса предоставляет форму html которая предает параметры на сайте. Сделать ее только в php метод POST вся загвоздка у меня всего лишь в этой строке предаем форму в ней та и проблема! die('https://sci.interkassa.com/?&ik_sig...ayment_id.'&ik_desc='.$payment_desc.$_SESSION['auth']['id'].'&ik_account='.$_SESSION['auth']['id'].'&ik_type=reg&ik_idorder='.htmlspecialchars($insertrow).''); так как не понял как предать всю эту форму. Делал все по инструкции https://www.interkassa.com/documentation-sci/ Но я новичок в этом деле, и не так силен в написание кода, но что то умею. Поэтому решил обратиться за помощью на ваш форум. Мне показалось , что люди знающие здесь есть! Надеюсь на вашу помощь собратья и коллеги.
Нужно подключить модуль оплаты Интеркасса на самописанный сайт так чтобы человек мог оплатить и тд предварительно написав сумму оплаты Оплата 100грн по факту подключения. Проблема та же Интеркасса
нарисуй HTML форму и сделай её submit через javascript, так как POST запрос отправить без JavaScript или клика пользователя нельзя, примерно так