Нужна помощь Ошибка при пополнение. необычная проблема!

  • Автор темы erem
  • Дата начала
Статус
В этой теме нельзя размещать новые ответы.
erem
Местный
Сообщения
58
Реакции
2
Подскажите как исправить - если пополнить баланс и не собрать всю продукци - она обнулится после ввода денег, в каком файле проблема?
 
Anderson
Местный
Сообщения
44
Реакции
3
erem написал(а):
Подскажите как исправить - если пополнить баланс и не собрать всю продукци - она обнулится после ввода денег, в каком файле проблема?
напиши по подробнее
 
erem
Местный
Сообщения
58
Реакции
2
Когда пополняют баланс, склад обновится до 0. ( Весь продукции исчезнет. )
 
Anderson
Местный
Сообщения
44
Реакции
3
скинь модуль пополнения
 
erem
Местный
Сообщения
58
Реакции
2
Anderson написал(а):
скинь модуль пополнения


<div class="s-bk-lf">
<div class="acc-title">Пополнение баланса</div>
</div>

<?PHP
$_OPTIMIZATION["title"] = "Аккаунт - Пополнение баланса";
$usid = $_SESSION["user_id"];
$usname = $_SESSION["user"];

$db->Query("SELECT * FROM db_config WHERE id = '1' LIMIT 1");
$sonfig_site = $db->FetchArray();

/*
if($_SESSION["user_id"] != 1){
echo "<center><b><font color = red>Технические работы</font></b></center>";
return;
}
*/
?>


<div class="silver-bk">
<center><h3><span class="orange" style="font-size: 32px; font-weight: bolder;">АКЦИЯ:</span><br>При пополнении баланса до <span class="orange" style="font-size: 20px;"><span style="font-size: 28px;">150%</span> В ПОДАРОК!!!</span></h3> </center>
Курс игровой валюты: 1 рубль (Руб.) = 100 серебра.
<p><b>Минимальная сумма пополнения баланса составляет всего 1 рубль!</b></p>
<p>Ввод средств позволяет автоматически приобрести игровое серебро с помощью различных платежных
систем: Yandex Деньги, банковских карт, SMS, терминалов, денежных переводов и т.д.</p>
<p>Оплата и зачисление серебра на баланс производится в автоматическом режиме.</p>
<p>Введите сумму в РУБЛЯХ, которую вы хотите пополнить на баланс. <br>
После пополнения вам будет зачислено серебро.<br></p>

<br><p><b>АКЦИЯ! </b></p>
<p>
до 500 руб. - <b>50%</b> от суммы В ПОДАРОК!<br>

от 500 до 1500 руб. - <b>70%</b> от суммы В ПОДАРОК!<br>

от 1500 до 5000 руб. - <b>100%</b> от суммы В ПОДАРОК!<br>

свыше 5000 руб. - <b>150%</b> от суммы В ПОДАРОК!<br>

Пополните баланс свыше 1000 руб. и получите 2х<img src="/img/birds/blue.png" width="24"> В ПОДАРОК!!!<br>
Или 1х<img src="/img/birds/red.png" width="24"> В ПОДАРОК при пополнении баланса от 2000 руб.

</p>




<BR />
<BR />
<?
/// db_payeer_insert
if(isset($_POST["sum"])){

$sum = round(floatval($_POST["sum"]),2);


# Заносим в БД
$db->Query("INSERT INTO db_payeer_insert (user_id, user, sum, date_add) VALUES ('".$_SESSION["user_id"]."','".$_SESSION["user"]."','$sum','".time()."')");

$desc = base64_encode($_SERVER["HTTP_HOST"]." - USER ".$_SESSION["user"]);
$m_shop = $config->shopID;
$m_orderid = $db->LastInsert();
$m_amount = number_format($sum, 2, ".", "");
$m_curr = "RUB";
$m_desc = $desc;
$m_key = $config->secretW;

$arHash = array(
$m_shop,
$m_orderid,
$m_amount,
$m_curr,
$m_desc,
$m_key
);
$sign = strtoupper(hash('sha256', implode(":", $arHash)));

?>
<center>
<form method="GET" action="//payeer.com/api/merchant/m.php">
<input type="hidden" name="m_shop" value="<?=$config->shopID; ?>">
<input type="hidden" name="m_orderid" value="<?=$m_orderid; ?>">
<input type="hidden" name="m_amount" value="<?=number_format($sum, 2, ".", "")?>">
<input type="hidden" name="m_curr" value="RUB">
<input type="hidden" name="m_desc" value="<?=$desc; ?>">
<input type="hidden" name="m_sign" value="<?=$sign; ?>">
<input type="submit" name="m_process" value="Оплатить и получить серебро" />
</form>
</center>
<div class="clr"></div>
</div>
<?PHP

return;
}
?>
<script type="text/javascript">
var min = 0.01;
var ser_pr = 100;
function calculate(st_q) {

var sum_insert = parseFloat(st_q);
var sum_a1 = sum_insert * ser_pr;
var sum_b1;
if (sum_insert>=5 && sum_insert<500) {
sum_b1 = sum_a1 * 0.5;
$('#res_sum').html( (sum_a1.toFixed(0) + ' + ' + sum_b1.toFixed(0)) );
}
if (sum_insert>=500 && sum_insert<1500) {
sum_b1 = sum_a1 * 0.7;
$('#res_sum').html( (sum_a1.toFixed(0) + ' + ' + sum_b1.toFixed(0)) );
}
if (sum_insert>=1500 && sum_insert<5000) {
sum_b1 = sum_a1 * 1.0;
$('#res_sum').html( (sum_a1.toFixed(0) + ' + ' + sum_b1.toFixed(0)) );
}
if (sum_insert>=5000) {
sum_b1 = sum_a1 * 1.5;
$('#res_sum').html( (sum_a1.toFixed(0) + ' + ' + sum_b1.toFixed(0)) );
}

}

</script>

<div id="error3"></div>
<form method="POST" action="">
<input type="hidden" name="m" value="">
Введите сумму [Руб.]:
<input type="text" value="100" name="sum" size="7" id="psevdo" onchange="calculate(this.value)" onkeyup="calculate(this.value)" onfocusout="calculate(this.value)" onactivate="calculate(this.value)" ondeactivate="calculate(this.value)">

Вы получите <span id="res_sum" style="font-weight: bold;" class="orange">10000 + 5000</span> серебра
<br><br>
<input type="submit" id="submit" value="Пополнить баланс">
</form>
<script type="text/javascript">
calculate(100);
</script>
 
Kojo
Участник
Сообщения
286
Реакции
53
ой, какая необычная проблема:))при действиях как пополнение баланса, покупка персонажа склад обнуляется. И ксати строка, за это отвечающая не в этом файле, а в мерчанте
 
  • Like
Реакции: erem
erem
Местный
Сообщения
58
Реакции
2
Kojo написал(а):
ой, какая необычная проблема:))при действиях как пополнение баланса, покупка персонажа склад обнуляется. И ксати строка, за это отвечающая не в этом файле, а в мерчанте
Спасибо за совет. Щас буду марчант кидать :)
 
erem
Местный
Сообщения
58
Реакции
2
<?PHP
######################################
# Скрипт Fruit Farm
# Автор Rufus
# ICQ: 819-374
# Skype: Rufus272
######################################

# Автоподгрузка классов
function __autoload($name){ include("classes/_class.".$name.".php");}

# Класс конфига
$config = new config;

# Функции
$func = new func;

# База данных
$db = new db($config->HostDB, $config->UserDB, $config->PassDB, $config->BaseDB);





if (isset($_POST["m_operation_id"]) && isset($_POST["m_sign"]))
{
$m_key = $config->secretW;
$arHash = array($_POST['m_operation_id'],
$_POST['m_operation_ps'],
$_POST['m_operation_date'],
$_POST['m_operation_pay_date'],
$_POST['m_shop'],
$_POST['m_orderid'],
$_POST['m_amount'],
$_POST['m_curr'],
$_POST['m_desc'],
$_POST['m_status'],
$m_key);

$sign_hash = strtoupper(hash('sha256', implode(":", $arHash)));
if ($_POST["m_sign"] == $sign_hash && $_POST['m_status'] == "success")
{

$db->Query("SELECT * FROM db_payeer_insert WHERE id = '".intval($_POST['m_orderid'])."'");
if($db->NumRows() == 0){ echo $_POST['m_orderid']."|error"; exit;}

$payeer_row = $db->FetchArray();
if($payeer_row["status"] > 0){ echo $_POST['m_orderid']."|success"; exit;}

$db->Query("UPDATE db_payeer_insert SET status = '1' WHERE id = '".intval($_POST['m_orderid'])."'");

$ik_payment_amount = $payeer_row["sum"];
$user_id = $payeer_row["user_id"];

# Настройки
$db->Query("SELECT * FROM db_config WHERE id = '1' LIMIT 1");
$sonfig_site = $db->FetchArray();

$db->Query("SELECT user, referer_id FROM db_users_a WHERE id = '{$user_id}' LIMIT 1");
$user_ardata = $db->FetchArray();
$user_name = $user_ardata["user"];
$refid = $user_ardata["referer_id"];

# Зачисляем баланс
$serebro = sprintf("%.4f", floatval($sonfig_site["ser_per_wmr"] * $ik_payment_amount) );

$db->Query("SELECT insert_sum FROM db_users_b WHERE id = '{$user_id}' LIMIT 1");
$ins_sum = $db->FetchRow();

$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.1) ) : $serebro;
$add_tree = ( $ik_payment_amount >= 199.99) ? 2 : 0;
$lsb = time();
$to_referer = ($serebro * 0.10);

$db->Query("UPDATE db_users_b SET money_b = money_b + '$serebro', e_t = e_t + '$add_tree', to_referer = to_referer + '$to_referer', last_sbor = '$lsb', insert_sum = insert_sum + '$ik_payment_amount' WHERE id = '{$user_id}'");



# Зачисляем средства рефереру и дерево
$add_tree_referer = ($ins_sum <= 0.01) ? ", a_t = a_t + 1" : "";
$db->Query("UPDATE db_users_b SET money_b = money_b + $to_referer, from_referals = from_referals + '$to_referer' {$add_tree_referer} WHERE id = '$refid'");

# Статистика пополнений
$da = time();
$dd = $da + 60*60*24*15;
$db->Query("INSERT INTO db_insert_money (user, user_id, money, serebro, date_add, date_del)
VALUES ('$user_name','$user_id','$ik_payment_amount','$serebro','$da','$dd')");



# Обновление статистики сайта
$db->Query("UPDATE db_stats SET all_insert = all_insert + '$ik_payment_amount' WHERE id = '1'");

echo $_POST['m_orderid']."|success";
exit;


}
echo $_POST['m_orderid']."|error";
}
?>
 
Kojo
Участник
Сообщения
286
Реакции
53
ну конкретно вот:
last_sbor = '$lsb'
 
  • Like
Реакции: erem
erem
Местный
Сообщения
58
Реакции
2
  • #10
Нужно удалить это и всё
 
Kojo
Участник
Сообщения
286
Реакции
53
  • #11
да, но я бы подождал других опытных товарищей в этой ветке. Я например не могу понять смысла, зачем делалось обнуление ласт сбора при пополнении и покупке персонажа. Это в стандартной сборке ФФ. Ну если это сделали, то видимо зачем то это было нужно
 
  • Like
Реакции: erem
erem
Местный
Сообщения
58
Реакции
2
  • #12
Ну так неопытные игроки больше не будут играть. Они подумают что это лохотрон
 
erem
Местный
Сообщения
58
Реакции
2
  • #13
Проблем решён. Очень спасибо. респект от меня :)
 
AriCosmo
Участник
Сообщения
515
Реакции
115
Skype
  • #14
Проблема решена! Тема закрыта!
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху