function print_form($purse, $order_id, $amount, $clear_amount, $description, $secret_code, $submit) { // making signature // создаем подпись $sign = ref_sign($purse, $order_id, $amount, $clear_amount, $description, $secret_code); echo '<form action="http://service.smscoin.com/bank/" method="post"> <input name="s_purse" type="hidden" value="' . $purse . '" /> <input name="s_order_id" type="hidden" value="' . $order_id . '" /> <input name="s_amount" type="hidden" value="' . $amount . '" /> <input name="s_clear_amount" type="hidden" value="' . $clear_amount . '" /> <input name="s_description" type="hidden" value="' . $description . '" /> <input name="s_sign" type="hidden" value="' . $sign . '" /> <input type="submit" style="background-color:#AA0000; color: white;" value="' . $submit . '" /> </form>'; }
$_REQUEST[$request_key] = substr(strip_tags(trim($request_value)), 0, 250); } $secret_code = "meydan_secret"; $purse = $_REQUEST["s_purse"]; // sms:bank id идентификатор смс:банка $order_id = $_REQUEST["s_order_id"]; // operation id идентификатор операции $amount = $_REQUEST["s_amount"]; // transaction sum сумма транзакции $clear_amount = $_REQUEST["s_clear_amount"]; // billing algorithm алгоритм подсчета стоимости $inv = $_REQUEST["s_inv"]; // operation number номер операции $phone = $_REQUEST["s_phone"]; // phone number номер телефона $sign = $_REQUEST["s_sign_v2"]; // signature подпись $reference = ref_sign($secret_code, $purse, $order_id, $amount, $clear_amount, $inv, $phone); $have_bank = mysql_fetch_Array(mysql_Query("SELECT users.id, users.login FROM bank LEFT JOIN users on users.login=bank.login WHERE number=" . (int) $order_id)); if ($have_bank) { if ($sign == $reference) { $add_platin = $amount * 10 * (1 + $bonus / 100); $txt = "Удачно переведены <b>{$add_platin} Пл.</b>" . ($bonus ? " (Бонус:" . $bonus . "%)" : "") . " на счет номер " . $order_id . ". Удачной игры, мы работаем для Вас!"; mysql_query("UPDATE bank SET emoney=emoney+{$add_platin} WHERE number=" . $order_id); mysql_query("INSERT INTO smscoin(user_id, bank_id, platina, bonus, s_inv, s_phone, amount) VALUES ('" . $have_bank["id"] . "', '{$order_id}', '{$add_platin}', '{$bonus}', '{$inv}', '{$phone}','{$amount}')"); mysql_query("INSERT INTO pochta(user, whom, text, subject) VALUES ('Путешественник','" . $have_bank["login"] . "','" . $txt . "','Покупка Платины')"); } else { mysql_query("INSERT INTO smscoin(user_id, bank_id, platina, bonus, s_inv, s_phone, amount) VALUES ('" . $have_bank["id"] . "', '{$order_id}', '0', '{$bonus}', '{$inv}', '{$phone}', '{$amount}')"); } } mysql_close();
function before_process() { global $_POST; $purse = $_POST["s_purse"]; // sms:bank id идентификатор смс:банка $order_id = $_POST["s_order_id"]; // operation id идентификатор операции $amount = $_POST["s_amount"]; // transaction sum сумма транзакции $clear_amount = $_POST["s_clear_amount"]; // billing algorithm алгоритм подсчета стоимости $s_status = $_POST["s_status"]; // Статус платежа: 1 - прошел, 0 - не прошел. $s_sign = $_POST["s_sign"]; // MD5-хэш строки, состоящей из соединенных через двойное // двоеточие ("::") параметров secret_code, s_purse, s_order_id, // s_amount, s_clear_amount и s_status (в указанном порядке), // где secret_code - секретный ключ Вашего смс:банка. // если проверка платежа неудачна - вернуться к выбору оплаты if ($s_sign != ref_sign(MODULE_PAYMENT_SMSCOIN_SECRET_KEY, $purse, $order_id, $amount, $clear_amount, $s_status)) { vam_redirect(vam_href_link(FILENAME_CHECKOUT_PAYMENT, 'error_message=' . MODULE_PAYMENT_SMSCOIN_TEXT_ERROR_MESSAGE, 'SSL', true, false)); } // проверка платежа удачна return false; }