Бонус при пополнении 100%

  • Автор темы Rozenbaund
  • Дата начала
Rozenbaund
Участник
Сообщения
19
Реакции
0
Пользователь пополняет баланс от 1 рубля и ему начисляется бонус 100% при пополнении.
Чтобы получить бонус нужно пополнить баланс от 1 рубля и до 2000
Какое значения нужно вставить.
Помогите, пожалуйста!
Вот код:
PHP:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro;
 
Последнее редактирование модератором:
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
PHP:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro; // говорит о том, что при первом поплнении получишь бонус 50%
Для бонуса в 100% от суммы пополнения
PHP:
if ($xxxx >= 1 AND $xxxx <= 2000) $serebro *= 2; //$xxxx имя переменной, в которой хранится сумма пополнения
 
Последнее редактирование модератором:
Rozenbaund
Участник
Сообщения
19
Реакции
0
MegaGoblin написал(а):
PHP:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro; // говорит о том, что при первом поплнении получишь бонус 50%
Для бонуса в 100% от суммы пополнения
PHP:
if ($xxxx >= 1 AND $xxxx <= 2000) $serebro *= 2; //$xxxx имя переменной, в которой хранится сумма пополнения
Спасибо большое, очень сильно помог мне, все отлично работает!
 
Rozenbaund
Участник
Сообщения
19
Реакции
0
Помогите пожалуйста как настроить 10% при каждом пополнении я уже второй день голову себе ломаю.
Вот код:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro;
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
Rozenbaund написал(а):
Помогите пожалуйста как настроить 10% при каждом пополнении я уже второй день голову себе ломаю.
Вот код:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro;
Я же писал выше, что это код для первого пополнения.
PHP:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro; // говорит о том, что при первом поплнении получишь бонус 50%
И это я уже описывал тут
https://servahoc.ru/threads/50-pri-popolnenii.1595/#post-19693

В твоем случае надо не на 1.5 умножать, а на 1.1
 
Rozenbaund
Участник
Сообщения
19
Реакции
0
MegaGoblin написал(а):
Я же писал выше, что это код для первого пополнения.
PHP:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro; // говорит о том, что при первом поплнении получишь бонус 50%
И это я уже описывал тут
https://servahoc.ru/threads/50-pri-popolnenii.1595/#post-19693

В твоем случае надо не на 1.5 умножать, а на 1.1
Вместо этой строки:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro;
Написал эту:
$serebro = $serebro *1.1;

Вношу 1 рубль и должно прийти 1.10 а приходит 1.32
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
Rozenbaund написал(а):
Вместо этой строки:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro;
Написал эту:
$serebro = $serebro *1.1;
Вношу 1 рубль и должно прийти 1.10 а приходит 1.32
Значит еще что-то где-то написал ты, или сумма приходит не 1 рубль. Скинь код весь
 
Rozenbaund
Участник
Сообщения
19
Реакции
0
MegaGoblin написал(а):
Значит еще что-то где-то написал ты, или сумма приходит не 1 рубль. Скинь код весь
Вот код
PHP:
<?PHP
# Автоподгрузка классов
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 = $serebro *1.1;
   $add_tree = ( $ik_payment_amount >= 499.99) ? 0 : 0;
   $lsb = time();
   $to_referer = ($serebro * 0.20);
  
  
  
   $db->Query("UPDATE db_users_b SET money_b = money_b + '$serebro', d_t = d_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";
}
?>
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
Сколько у тебя серебра за 1 рубль? 100?

И еще похоже что твой юзер является рефералом самого себя.
Сначала он получил 1.1, а потом еще
$to_referer = ($serebro * 0.20); // 1.1 * 0.2 = 0.22

Вот и получается эти 1.32
 
Rozenbaund
Участник
Сообщения
19
Реакции
0
  • #10
MegaGoblin написал(а):
Сколько у тебя серебра за 1 рубль? 100?

И еще похоже что твой юзер является рефералом самого себя.
Сначала он получил 1.1, а потом еще
$to_referer = ($serebro * 0.20); // 1.1 * 0.2 = 0.22

Вот и получается эти 1.32
Все правильно начисляется в другом аккаунте, я был как юзером и рефералом самого себя. Спасибо.
 
ForeverRED66
Участник
Сообщения
18
Реакции
0
  • #11
Подскажите мне как поступать, чето не догоняю....что бы сделать бонус на первое пополнение?Хотя и на постоянный уж то же сразу...
PHP:
<?
/// db_payeer_insert
if(isset($_POST["sum"])){

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

$serebro = intval($sum <= 0.01) ? ($serebro + ($serebro * 0.1) ) : $serebro;

if ($sum>= 1 AND $sum<= 2000) $serebro *= 1.3; //$xxxx имя переменной, в которой хранится сумма пополнения

# Заносим в БД
$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)));

?>
 
Последнее редактирование:
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #12
Так по умолчанию же сразу стоит бонус на первое пополнение
 
ForeverRED66
Участник
Сообщения
18
Реакции
0
  • #13
MegaGoblin написал(а):
Так по умолчанию же сразу стоит бонус на первое пополнение
Это я дописал его, он не работает , возможно потому что $serebro он не знает что такое (хотя в базе есть serebro), но при пополнении никаких ошибок нет.

наверно что то изменить вот тут можно для постоянного бонуса,но я не догоняю как(
PHP:
/// db_payeer_insert
if(isset($_POST["sum"])){

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

$serebro = intval($sum <= 0.01) ? ($serebro + ($serebro * 0.1) ) : $serebro;

if ($sum>= 1 AND $sum<= 2000) $serebro *= 1.3; //$xxxx имя переменной, в которой хранится сумма пополнения
 
Последнее редактирование:
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #14
Чуть выше же я писал
PHP:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro; // говорит о том, что при первом поплнении получишь бонус 50%
У тебя не с той переменной идет сравнение
 
ForeverRED66
Участник
Сообщения
18
Реакции
0
  • #15
MegaGoblin написал(а):
Чуть выше же я писал
PHP:
$serebro = intval($ins_sum <= 0.01) ? ($serebro + ($serebro * 0.5) ) : $serebro; // говорит о том, что при первом поплнении получишь бонус 50%
У тебя не с той переменной идет сравнение
Как мне изменить надо тогда?
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #16
ForeverRED66 написал(а):
Как мне изменить надо тогда?
Я же написал. Сравни эту строку у меня и у себя - найди отличия.
 
ForeverRED66
Участник
Сообщения
18
Реакции
0
  • #17
MegaGoblin написал(а):
Я же написал. Сравни эту строку у меня и у себя - найди отличия.
# Зачисляем баланс
$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; // если поставить так то смысл не изменяется

if ($sum>= 1 AND $sum<= 2000) $serebro *= 1.3; //$xxxx имя переменной, в которой хранится сумма пополнения
 
ForeverRED66
Участник
Сообщения
18
Реакции
0
  • #18
Косяк найден,не в том файле все правил))
 
MegaGoblin
PHP, JS, AJAX, CSS, HTML
Участник
Сообщения
322
Реакции
72
  • #19
Сверху