Проблема с Робокассой

A
На сайте с 13.12.2011
Offline
16
630

Доброго времени суток уважаемые веб-мастера! Решил написать донат для игрового сервера, когда написал столкнулся с такой проблемой:

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

Мои код:

donate.php

if($_POST['action']=='start_pay'){	


$mrh_login = "desperation";
$mrh_pass1 = "******";
$inv_id = rand(0,10000);
$inv_desc = "Desperation Shop";
$out_summ = $_POST["prices"];
$culture = "ru";
$shp_item = $_POST["account"];
$crc = md5("$mrh_login:$out_summ:$inv_id:$mrh_pass1:Shp_item=$shp_item");
if ($shp_item and $out_summ <= 0 ) {
echo "<div class='header'> <font color ='#FF0000'><b>Сумма не может быть меньше чем 1 рубль!</b></font> </div>";
exit();
}
else if (!$shp_item and !$out_summ) {
echo "<div class='header'> <font color ='#FF0000'><b>Заполните все поля!</b></font> </div>";
exit();
}
$acco = $mysqli->real_escape_string($_POST['account']);
$res = $mysqli->query("Select * from `Accounts` where `ID` like '$acco'");
$num = $res->num_rows;
if($num==0)
{
echo "<div class='header'> <font color ='#FF0000'><b>Несуществующий аккаунт!</b></font> </div>";
exit();
}
echo "<form action='https://merchant.roboxchange.com/Index.aspx' method='POST'>";
echo "<div class='donatecontp'><div class='donateleft'>";
echo "Вы собираетесь пополнить Донат счет аккаунту <b><font color='orange'>№$shp_item</b></font> на: $out_summ руб.<br/><br/>";
echo "<input type='hidden' name='MrchLogin' value='$mrh_login'>";
echo "<input type='hidden' name='InvId' value='$inv_id'>";
echo "<input type='hidden' name='Desc' value='$inv_desc'>";
echo "<input type='hidden' name='OutSum' value='$out_summ'>";
echo "<input type='hidden' name='SignatureValue' value='$crc'>";
echo "<input type='hidden' name='Shp_item' value='$shp_item'>";
echo "<input type='hidden' name='Culture' value='$culture'>";
echo "<input type='submit' value='Продолжить'>";
echo "</div></div></div></form>";

}else{

echo "<form method='POST'>";
echo "<div class='donatecont'><div class='donatecontp'><div class='donateleft'><b>Укажите номер Вашего аккаунта:</b> <a id='demo1Btn' class='navi f14 bold' href='#'>[?]</a>";
echo "</div>";
echo "<div class='donateright'>";
echo "<input type='text' name='account'>";
echo "</div></div>";
echo "<div class='donatecontp'><div class='donateleft'><b>Сумма, для пополнения счета:</b>";
echo "</div>";
echo "<div class='donateright'>";
echo "<input type='text' name='prices'>";
echo "</div></div>";
echo "<input type='hidden' name='action' value='start_pay'>";
echo "<div class='donatecontp'><div class='donateleft'>";
echo "<input type='submit' value='Продолжить'>";
echo "</div></div></div></form>";
}

result.php

	include('include/cfg.php');

$mrh_pass2 = "******";
$out_summ = $_REQUEST["OutSum"];
$inv_id = $_REQUEST["InvId"];
$shp_item = $_REQUEST["Shp_item"];
$crc = $_REQUEST["SignatureValue"];
$crc = strtoupper($crc);
$my_crc = strtoupper(md5("$out_summ:$inv_id:$mrh_pass2:Shp_item=$shp_item"));

if($my_crc == $crc){

$amount2 = parseInt($out_summ);
$data = explode(".",$amount2);
$amount2 = $data['0'];
$asd = $db->query("SELECT * FROM `Accounts` WHERE `ID`='".$shp_item."'");
$row = $db->get_row($asd);
/*$amount = $row['NewVirMoney']+$amount2;*/
$db->query( "UPDATE `Accounts` SET `VirMoney` = `VirMoney` + ".$amount2.", `NewVirMoney` = ".$amount2." WHERE `ID`='".$shp_item."'" );
$mysqli->query("Insert Into `Donate` (`ID`,`UserID`,`Summ`) VALUES ('".$_SESSION['ID']."','".$shp_item."','".$out_summ."')");

echo "<b><font color='green'>Операция прошла успешно</font></b>";
}else{

echo "<b><font color='red'>Операция прошла неуспешно</font></b>";
exit();}

success.php

$mrh_pass1 = "******";

$out_summ = $_REQUEST["OutSum"];
$inv_id = $_REQUEST["InvId"];
$shp_item = $_REQUEST["Shp_item"];
$crc = $_REQUEST["SignatureValue"];
$crc = strtoupper($crc);
$my_crc = strtoupper(md5("$out_summ:$inv_id:$mrh_pass1:Shp_item=$shp_item"));

if ($my_crc != $crc)
{
echo "<b><font color='red'>Операция прошла неуспешно</font></b>";
exit();
}
echo "<b><font color='green'>Операция прошла успешно</font></b>";
IL
На сайте с 20.04.2007
Offline
435
#1
Artemios:
Мучаюсь уже трое суток, никак не могу понять как этого добиться. Очень прошу помощи

$_SESSION['ID']
... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий