Автор Тема: Бонус на PAYEER  (Прочитано 2407 раз)

0 Пользователей и 1 Гость просматривают эту тему.

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« : 08 Июля 2017, 10:31:06 »
Привет )
В каком файле нужно отредактировать минимальную сумму на вывод?
Вопрос касается этого модуля http://svalka58.ru/index.php?topic=229.0
 

APTEMOH

  • *
  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Болеее 500 сообщений Топ 10 по сообщениям За помощь пользователям Репутация более 15 Более 10 созданных тем
  • Дата регистрации: Сен. 2015
  • Расположение: Расположение
  • Сообщений: 529
  • Страна: th
  • Поблагодарили: 64 раз(а)
  • Репутация +19/-2
  • Пол: Мужской
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #1 : 08 Июля 2017, 12:22:32 »
Код бы сюда, глянули бы... Качать модуль не кайф .-.0)

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #2 : 08 Июля 2017, 12:51:11 »
 держи )
только я сомневаюсь, что в этом коде редактировать что то нужно..

<?PHP
$_OPTIMIZATION["title"] = "Бонус на Payeer";
$usid = $_SESSION["user_id"];
$uname = $_SESSION["user"];
# Привязка кошелька
$db->Query("SELECT * FROM db_bonus_listpayeer WHERE user_id = '$usid' ORDER BY id DESC LIMIT 1");
$sonfig_purse = $db->FetchArray();

# Настройки бонусов
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();

if($user_data["insert_sum"] >= 500 && $user_data["insert_sum"] <= 999999) {
$lv = 4;
$bonus_min = 20;
$bonus_max = 50;
} elseif ($user_data["insert_sum"] >= 200 && $user_data["insert_sum"] < 499.99)  {
$lv = 3;
$bonus_min = 10;
$bonus_max = 20;
} elseif($user_data["insert_sum"] >= 100 && $user_data["insert_sum"] < 199.99)  {
$lv = 2;
$bonus_min = 5;
$bonus_max = 10;
} elseif($user_data["insert_sum"] >= 50 && $user_data["insert_sum"] < 99.99)  {
$lv = 1;
$bonus_min = 1;
$bonus_max = 5; 
}

?>
<div class="s-bk-lf">
   <div class="acc-title">Бонус на PAYEER</div>
</div>
<div class="silver-bk">
<div class="clr"></div>

<BR />
<p>
Один раз в день вы можете получить бонус в зависимости от той суммы которую вы ввели в наш проект. Бонус делится на <b style="color: green;">4 уровня:[br /][br /]
1 уровень - Вы ввели в проект 50-100 рублей и получаете от 1 до 5 копеек[br /]
2 уровень - Вы ввели в проект 100-200 рублей и получаете от 5 до 10 копеек[br /]
3 уровень - Вы ввели в проект 200-500 рублей и получаете от 10 до 20 копеек[br /]
4 уровень - Вы ввели в проект сумму более 500 рублей и получаете от 20 до 50 копеек[br /][br /]</p>


Бонус выдаётся 1 раз в 24 часа. <BR />
Бонус выдается в <font color="blue">реальных деньгах</font> <BR />
Сейчас вам доступен бонус в сумме от <font color="green" face="Arial" size="3"><?=$bonus_min;?></font> до <font color="green" face="Arial" size="3"><?=$bonus_max;?></font> <font color="blue">копеек</font>.
<BR /><BR />





<BR /><BR />
<?PHP
$ddel = time() + 60*60*24;
$dadd = time();
$db->Query("SELECT COUNT(*) FROM db_bonus_listpayeer WHERE user_id = '$usid' AND date_del > '$dadd'");

$hide_form = false;
   if($db->FetchRow() == 0){
   
      # Выдача бонуса
      if(isset($_POST["bonus"])){
      
         $sumbon = rand($bonus_min, rand($bonus_min, $bonus_max) );
         

 function ViewPurse($purse){
 
  if( substr($purse,0,1) != "P" ) return false;
  if( !preg_match("/^[0-9]{7,8}$/", substr($purse,1)) ) return false;
  return $purse;
 }
   
   # Заносим выплату
   if(isset($_POST["purse"])){
      
      $purse = ViewPurse($_POST["purse"]);
      $sum = sprintf("%.2f",$sumbon/100);
      $val = "RUB";
      
      if($purse !== false){
         
                     
                     ### Делаем выплату ###   
                         $payeer = new rfs_payeer($config->numberf, $config->idf, $config->keyf);
                     if ($payeer->isAuth())
                     {
                        
                        $arBalance = $payeer->getBalance();
                        if($arBalance["auth_error"] == 0)
                        {
                           
                           $sum_pay = round( ($sum), 2);
                           
                           $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                           if( ($balance) >= ($sum_pay+100)){
                           
                           
                           
                           $arTransfer = $payeer->transfer(array(
                           'curIn' => 'RUB', // счет списания
                           'sum' => $sum_pay, // сумма получения
                           'curOut' => 'RUB', // валюта получения
                           'to' => $purse, // получатель (email)
                           //'to' => '+71112223344',  // получатель (телефон)
                           //'to' => 'P1000000',  // получатель (номер счета)
                           'comment' => iconv('windows-1251', 'utf-8', "Бонус {$uname} с проекта наш-денежный-город.рф")
                           //'anonim' => 'Y', // анонимный перевод
                           //'protect' => 'Y', // протекция сделки
                           //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                           //'protectCode' => '12345', // код протекции
                           ));
                           
                              if (!empty($arTransfer["historyId"]))
                              {   
                              
      
                        # Вносим запись в список бонусов
# Зачилсяем юзверю
         $db->Query("UPDATE db_users_b SET bonuspayeer = bonuspayeer + '$sum' WHERE id = '$usid'");
         
         $db->Query("INSERT INTO db_bonus_listpayeer (user, user_id, sum, level, purse, date_add, date_del) VALUES ('$uname','$usid','$sum','$lv','$purse','$dadd','$ddel')");
         
         # Случайная очистка устаревших записей
         //$db->Query("DELETE FROM db_bonus_listpayeer WHERE date_del < '$dadd'");
         
         echo "<center><div class='alert'>Бонус в размере {$sum} копеек успешно выплачен!</div></center><BR />";
         
         $hide_form = true;
            
                              }
                              else
                              {
                              
                                 echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #1</font></center><BR />";   
                              
                              }
                           
                           
                           }else echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #2</font></center><BR />";
                           
                        }else echo "<center><font color = 'red'>Не удалось выплатить! Попробуйте позже #1</font></center><BR />";
                        
                     }else echo "<center><font color = 'red'>Не удалось выплатить! Попробуйте позже #2</font></center><BR />";
                     
                  
      }else echo "<center><font color = 'red'>Кошелек Payeer указан неверно! Смотрите образец!</font></center><BR />";
      
   }
         
         
      }
         
         # Показывать или нет форму
         if(!$hide_form){
?>




<form action="" method="post">
<table width="330" border="0" align="center">

<tr>
   
   
<?php

   IF($sonfig_purse["purse"])
   {$pur=$sonfig_purse["purse"];
   echo"<td><input style='float: left; margin-left: 100px;' type='text' name='purse' size='15' value='".$pur."' readonly='readonly'";
   echo"</td>";
   }

   else echo"
   <center><font color='#000;'>Введите кошелек Payeer</font>:</center>
   <td><input style='float: left; margin-left: 100px;' type='text' name='purse' size='15'/> </td>";


?>   
   
</tr>
 
<input style="height: 30px; margin-top: 1px; float:right;margin-right: 80px;" type="submit" name="bonus" value="Получить бонус" style="height: 30px; margin-top:10px; float:right" />

</table>
</form>

<?PHP

}

}else

{
$db->Query("SELECT * FROM db_bonus_listpayeer WHERE user_id = '$usid' order by ID DESC limit 1");
$u_data = $db->FetchArray();
$time = $u_data['date_del'] - $dadd;
$hours = floor($time/3600);
floor($minutes =($time/3600 - $hours)*60);
$seconds = ceil(($minutes - floor($minutes))*60);
$min=ceil($minutes)-1;

//echo $data['sec'] - time().' сек.';
//echo "$hours:$min:$seconds</font>";
echo "<center><div class='alert' id='error'>Вы уже получали бонус, следующий через $hours:$min:$seconds</div></font></center><BR />";
}

?>




<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
    <td colspan="5" align="center"><h4>Последние 20 бонусов</h4></td>
    </tr>
  <tr>
    <td align="center" class="m-tb">ID</td>
    <td align="center" class="m-tb">Пользователь</td>
   <td align="center" class="m-tb">Сумма</td>
   <td align="center" class="m-tb">Кошелек</td>
   <td align="center" class="m-tb">Дата</td>
   <td align="center" class="m-tb">Уровень</td>
   
  </tr>
  <?PHP
 

 
  $db->Query("SELECT * FROM db_bonus_listpayeer ORDER BY id DESC LIMIT 20");
 
 
   if($db->NumRows() > 0){
      
  $all_pay = 0;
  $all_pay_sum = 0;      
 
        while($bon = $db->FetchArray()){
   $all_pay ++;
   $all_pay_sum += $bon["sum"];         
      
      ?>
      <tr align="center" class="ltb">
          <td align="center"><?=$bon["id"]; ?></td>
          <td align="center"><?=$bon["user"]; ?></td>
          <td><b style="margin-right: -5px;"><?=$bon["sum"]; ?> <?=$config->VAL; ?></td>
          <td align="center"><?=substr($bon["purse"],0,-3); ?><font color = 'red'>XXX</font></td>
         <td><?=date("d.m.Y в H.i.s",$bon["date_add"]); ?></td>
         <td><?=$bon["level"]; ?> ур.</td>
        </tr>
      
      

      
      <?PHP
      
      }
      
$db->Query("SELECT * FROM db_payment WHERE status = '3' AND date_add > '$dt'");      
      
  ?>
 

 
  <?PHP 
 
   }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
 
  ?>
  </table>

<div class="clr"></div>      
  </div>
 

APTEMOH

  • *
  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Болеее 500 сообщений Топ 10 по сообщениям За помощь пользователям Репутация более 15 Более 10 созданных тем
  • Дата регистрации: Сен. 2015
  • Расположение: Расположение
  • Сообщений: 529
  • Страна: th
  • Поблагодарили: 64 раз(а)
  • Репутация +19/-2
  • Пол: Мужской
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #3 : 08 Июля 2017, 18:12:12 »
if($user_data["insert_sum"] >= 500 && $user_data["insert_sum"] <= 999999) {
$lv = 4;
$bonus_min = 20;
$bonus_max = 50;
} elseif ($user_data["insert_sum"] >= 200 && $user_data["insert_sum"] < 499.99)  {
$lv = 3;
$bonus_min = 10;
$bonus_max = 20;
} elseif($user_data["insert_sum"] >= 100 && $user_data["insert_sum"] < 199.99)  {
$lv = 2;
$bonus_min = 5;
$bonus_max = 10;
} elseif($user_data["insert_sum"] >= 50 && $user_data["insert_sum"] < 99.99)  {
$lv = 1;
$bonus_min = 1;
$bonus_max = 5; 
}

На каждом уровне свой минимум и максимум:
$bonus_min = 1;
$bonus_max = 5;

В чем проблема?
 

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #4 : 09 Июля 2017, 08:58:36 »
Проблема в том, что с копейками это не работает.
Как бы я не старался и не пытался, выдает "Внутреняя ошибка - сообщите о ней администратору! #1"
 

takebet

Бонус на PAYEER
« Ответ #5 : 09 Июля 2017, 10:15:07 »
Выплаты у паера минимум 1 рубль. Так что ставь от 100
Пример: $bonus_min = 100;
и выше.....
 

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #6 : 09 Июля 2017, 10:20:30 »
Понял, спасибо.

Добавлено сообщение: 09 Июля 2017, 13:19:09
Что то все равно выдает ошибку.. "Внутреняя ошибка - сообщите о ней администратору! #1"
Что я не так делаю?
<?PHP
$_OPTIMIZATION["title"] = "Бонус на Payeer";
$usid = $_SESSION["user_id"];
$uname = $_SESSION["user"];
# Привязка кошелька
$db->Query("SELECT * FROM db_bonus_listpayeer WHERE user_id = '$usid' ORDER BY id DESC LIMIT 1");
$sonfig_purse = $db->FetchArray();

# Настройки бонусов
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();

if($user_data["insert_sum"] >= 1500 && $user_data["insert_sum"] <= 999999) {
$lv = 4;
$bonus_min = 600;
$bonus_max = 1000;
} elseif ($user_data["insert_sum"] >= 600 && $user_data["insert_sum"] < 1499.99)  {
$lv = 3;
$bonus_min = 400;
$bonus_max = 600;
} elseif($user_data["insert_sum"] >= 250 && $user_data["insert_sum"] < 599.99)  {
$lv = 2;
$bonus_min = 200;
$bonus_max = 400;
} elseif($user_data["insert_sum"] >= 100 && $user_data["insert_sum"] < 249.99)  {
$lv = 1;
$bonus_min = 100;
$bonus_max = 200; 
}

?>
<div class="s-bk-lf">
   <div class="acc-title">Бонус на PAYEER</div>
</div>
<div class="silver-bk">
<div class="clr"></div>

<BR />
<p>
Один раз в день вы можете получить бонус в зависимости от той суммы которую вы ввели в наш проект. Бонус делится на <b style="color: green;">4 уровня:[br /][br /]
1 уровень - Вы ввели в проект 100-250 рублей и получаете от 1 до 2 рублей[br /]
2 уровень - Вы ввели в проект 250-600 рублей и получаете от 2 до 4 рублей[br /]
3 уровень - Вы ввели в проект 600-1500 рублей и получаете от 4 до 6 рублей[br /]
4 уровень - Вы ввели в проект сумму более 1500 рублей и получаете от 6 до 10 рублей[br /][br /]</p>


Бонус выдаётся 1 раз в 24 часа. <BR />
Бонус выдается в <font color="blue">реальных деньгах</font> <BR />
Сейчас вам доступен бонус в сумме от <font color="green" face="Arial" size="3"><?=$bonus_min;?></font> до <font color="green" face="Arial" size="3"><?=$bonus_max;?></font> <font color="blue">рублей</font>.
<BR /><BR />





<BR /><BR />
<?PHP
$ddel = time() + 60*60*24;
$dadd = time();
$db->Query("SELECT COUNT(*) FROM db_bonus_listpayeer WHERE user_id = '$usid' AND date_del > '$dadd'");

$hide_form = false;
   if($db->FetchRow() == 0){
   
      # Выдача бонуса
      if(isset($_POST["bonus"])){
      
         $sumbon = rand($bonus_min, rand($bonus_min, $bonus_max) );
         

 function ViewPurse($purse){
 
  if( substr($purse,0,1) != "P" ) return false;
  if( !preg_match("/^[0-9]{7,8}$/", substr($purse,1)) ) return false;
  return $purse;
 }
   
   # Заносим выплату
   if(isset($_POST["purse"])){
      
      $purse = ViewPurse($_POST["purse"]);
      $sum = sprintf("%.2f",$sumbon/100);
      $val = "RUB";
      
      if($purse !== false){
         
                     
                     ### Делаем выплату ###   
                         $payeer = new rfs_payeer($config->numberf, $config->idf, $config->keyf);
                     if ($payeer->isAuth())
                     {
                        
                        $arBalance = $payeer->getBalance();
                        if($arBalance["auth_error"] == 0)
                        {
                           
                           $sum_pay = round( ($sum), 2);
                           
                           $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                           if( ($balance) >= ($sum_pay)){
                           
                           
                           
                           $arTransfer = $payeer->transfer(array(
                           'curIn' => 'RUB', // счет списания
                           'sum' => $sum_pay, // сумма получения
                           'curOut' => 'RUB', // валюта получения
                           'to' => $purse, // получатель (email)
                           //'to' => '+71112223344',  // получатель (телефон)
                           //'to' => 'P1000000',  // получатель (номер счета)
                           'comment' => iconv('windows-1251', 'utf-8', "Бонус {$uname} с проекта наш-денежный-город.рф")
                           //'anonim' => 'Y', // анонимный перевод
                           //'protect' => 'Y', // протекция сделки
                           //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                           //'protectCode' => '12345', // код протекции
                           ));
                           
                              if (!empty($arTransfer["historyId"]))
                              {   
                              
      
                        # Вносим запись в список бонусов
# Зачилсяем юзверю

         $db->Query("UPDATE db_users_b SET bonuspayeer = bonuspayeer + '$sum' WHERE id = '$usid'");
         $db->Query("INSERT INTO db_bonus_listpayeer (user, user_id, sum, level, purse, date_add, date_del) VALUES ('$uname','$usid','$sum','$lv','$purse','$dadd','$ddel')");
         
         # Случайная очистка устаревших записей
         //$db->Query("DELETE FROM db_bonus_listpayeer WHERE date_del < '$dadd'");
         
         echo "<center><div class='alert'>Бонус в размере {$sum} копеек успешно выплачен!</div></center><BR />";
         
         $hide_form = true;
            
                              }
                              else
                              {
                              
                                 echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #1</font></center><BR />";   
                              
                              }
                           
                           
                           }else echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #2</font></center><BR />";
                           
                        }else echo "<center><font color = 'red'>Не удалось выплатить! Попробуйте позже #1</font></center><BR />";
                        
                     }else echo "<center><font color = 'red'>Не удалось выплатить! Попробуйте позже #2</font></center><BR />";
                     
                  
      }else echo "<center><font color = 'red'>Кошелек Payeer указан неверно! Смотрите образец!</font></center><BR />";
      
   }
         
         
      }
         
         # Показывать или нет форму
         if(!$hide_form){
?>




<form action="" method="post">
<table width="330" border="0" align="center">

<tr>
   
   
<?php

   IF($sonfig_purse["purse"])
   {$pur=$sonfig_purse["purse"];
   echo"<td><input style='float: left; margin-left: 100px;' type='text' name='purse' size='15' value='".$pur."' readonly='readonly'";
   echo"</td>";
   }

   else echo"
   <center><font color='#000;'>Введите кошелек Payeer</font>:</center>
   <td><input style='float: left; margin-left: 100px;' type='text' name='purse' size='15'/> </td>";


?>   
   
</tr>
 
<input style="height: 30px; margin-top: 1px; float:right;margin-right: 80px;" type="submit" name="bonus" value="Получить бонус" style="height: 30px; margin-top:10px; float:right" />

</table>
</form>

<?PHP

}

}else

{
$db->Query("SELECT * FROM db_bonus_listpayeer WHERE user_id = '$usid' order by ID DESC limit 1");
$u_data = $db->FetchArray();
$time = $u_data['date_del'] - $dadd;
$hours = floor($time/3600);
floor($minutes =($time/3600 - $hours)*60);
$seconds = ceil(($minutes - floor($minutes))*60);
$min=ceil($minutes)-1;

//echo $data['sec'] - time().' сек.';
//echo "$hours:$min:$seconds</font>";
echo "<center><div class='alert' id='error'>Вы уже получали бонус, следующий через $hours:$min:$seconds</div></font></center><BR />";
}

?>




<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
    <td colspan="5" align="center"><h4>Последние 10 бонусов</h4></td>
    </tr>
  <tr>
    <td align="center" class="m-tb">ID</td>
    <td align="center" class="m-tb">Пользователь</td>
   <td align="center" class="m-tb">Сумма</td>
   <td align="center" class="m-tb">Кошелек</td>
   <td align="center" class="m-tb">Дата</td>
   <td align="center" class="m-tb">Уровень</td>
   
  </tr>
  <?PHP
 

 
  $db->Query("SELECT * FROM db_bonus_listpayeer ORDER BY id DESC LIMIT 10");
 
 
   if($db->NumRows() > 0){
      
  $all_pay = 0;
  $all_pay_sum = 0;      
 
        while($bon = $db->FetchArray()){
   $all_pay ++;
   $all_pay_sum += $bon["sum"];         
      
      ?>
      <tr align="center" class="ltb">
          <td align="center"><?=$bon["id"]; ?></td>
          <td align="center"><?=$bon["user"]; ?></td>
          <td><b style="margin-right: -5px;"><?=$bon["sum"]; ?> <?=$config->VAL; ?></td>
          <td align="center"><?=substr($bon["purse"],0,-3); ?><font color = 'red'>XXX</font></td>
         <td><?=date("d.m.Y в H.i.s",$bon["date_add"]); ?></td>
         <td><?=$bon["level"]; ?> ур.</td>
        </tr>
      
      

      
      <?PHP
      
      }
      
$db->Query("SELECT * FROM db_payment WHERE status = '3' AND date_add > '$dt'");      
      
  ?>
 

 
  <?PHP 
 
   }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
 
  ?>
  </table>

<div class="clr"></div>      
  </div>
 

takebet

Бонус на PAYEER
« Ответ #7 : 09 Июля 2017, 16:17:22 »
я у себя настрою и отпишусь позже. вероятно по очереди суммы не верно выстроены.
 

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #8 : 09 Июля 2017, 16:23:26 »
Жду с нетерпением! )
 

takebet

Бонус на PAYEER
« Ответ #9 : 09 Июля 2017, 21:18:58 »
Вот попробуй этот код, у меня работает. Можно не менять цены, если менять, то соответственно надо смотреть как мои настроены. Если стиль другой у тебя, то меняй под себя.
<?PHP
$_OPTIMIZATION["title"] = "Бонус на Payeer";
$usid = $_SESSION["user_id"];
$uname = $_SESSION["user"];
# Привязка кошелька
$db->Query("SELECT * FROM db_bonus_listpayeer WHERE user_id = '$usid' ORDER BY id DESC LIMIT 1");
$sonfig_purse = $db->FetchArray();

# Настройки бонусов
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();

if($user_data["insert_sum"] >= 800 && $user_data["insert_sum"] <= 999999) {
$lv = 4;
$bonus_min = 800;
$bonus_max = 1000;
} elseif ($user_data["insert_sum"] >= 600 && $user_data["insert_sum"] < 799.99)  {
$lv = 3;
$bonus_min = 600;
$bonus_max = 799;
} elseif($user_data["insert_sum"] >= 300 && $user_data["insert_sum"] < 599.99)  {
$lv = 2;
$bonus_min = 300;
$bonus_max = 599;
} elseif($user_data["insert_sum"] >= 100 && $user_data["insert_sum"] < 299.99)  {
$lv = 1;
$bonus_min = 100;
$bonus_max = 299; 
}
?>
<div class="s-bk-lf">
   <div class="acc-title">Бонус на PAYEER</div>
</div>
<div class="silver-bk">
<div class="clr"></div>

<BR />
<p>
Один раз в день вы можете получить бонус в зависимости от той суммы которую вы ввели в наш проект. Бонус делится на <b style="color: green;">4 уровня:[br /][br /]
  </div>
<div class="silver-bk">
1 уровень - Вы ввели в проект 100-299,99 рублей и получаете от 100 до 299 копеек[br /]
2 уровень - Вы ввели в проект 300-599,99 рублей и получаете от 300 до 599 копеек[br /]
3 уровень - Вы ввели в проект 600-799,99 рублей и получаете от 600 до 799 копеек[br /]
4 уровень - Вы ввели в проект сумму более 800 рублей и получаете от 800 до 1000 копеек[br /][br /]</p>


Бонус выдаётся 1 раз в 24 часа. <BR />
Бонус выдается в <font color="blue">реальных деньгах</font> <BR />
<?
// глушим новичков от разворовывания бюджета :)
$sumClose = 100; // заглушка на 10 рублей

if($user_data["insert_sum"] < $sumClose){
$rest = $sumClose - $user_data["insert_sum"];
?>
   
<center><font color="red"><p>БОНУСЫ ДОСТУПНЫ ТОЛЬКО ПОСЛЕ [br /] ПОПОЛНЕНИЯ БАЛАНСА НА <?=$rest?> РУБ. И БОЛЬШЕ![br /][br /] </center>

</div>
<?PHP

return;
}

?>

Сейчас вам доступен бонус в сумме от <font color="green" face="Arial" size="3"><?=$bonus_min;?></font> до <font color="green" face="Arial" size="3"><?=$bonus_max;?></font> <font color="blue"> копеек</font>.

<BR />
</div>

 
<BR /><BR />
<?PHP
$ddel = time() + 60*60*24;
$dadd = time();
$db->Query("SELECT COUNT(*) FROM db_bonus_listpayeer WHERE user_id = '$usid' AND date_del > '$dadd'");

$hide_form = false;
   if($db->FetchRow() == 0){
   
      # Выдача бонуса
      if(isset($_POST["bonus"])){
     
         $sumbon = rand($bonus_min, rand($bonus_min, $bonus_max) );
         

 function ViewPurse($purse){
 
  if( substr($purse,0,1) != "P" ) return false;
  if( !preg_match("/^[0-9]{7,8}$/", substr($purse,1)) ) return false;
  return $purse;
 }
   
   # Заносим выплату
   if(isset($_POST["purse"])){
     
      $purse = ViewPurse($_POST["purse"]);
      $sum = sprintf("%.2f",$sumbon/100);
      $val = "RUB";
     
      if($purse !== false){
         
                     
                     ### Делаем выплату ###   
                         $payeer = new rfs_payeer($config->numberf, $config->idf, $config->keyf);
                     if ($payeer->isAuth())
                     {
                       
                        $arBalance = $payeer->getBalance();
                        if($arBalance["auth_error"] == 0)
                        {
                           
                           $sum_pay = round( ($sum), 2);
                           
                           $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                           if( ($balance) >= ($sum_pay+100)){
                           
                           
                           
                           $arTransfer = $payeer->transfer(array(
                           'curIn' => 'RUB', // счет списания
                           'sum' => $sum_pay, // сумма получения
                           'curOut' => 'RUB', // валюта получения
                           'to' => $purse, // получатель (email)
                           //'to' => '+71112223344',  // получатель (телефон)
                           //'to' => 'P1000000',  // получатель (номер счета)
                           'comment' => iconv('windows-1251', 'utf-8', "Бонус {$uname} с проекта наш-денежный-город.рф")
                           //'anonim' => 'Y', // анонимный перевод
                           //'protect' => 'Y', // протекция сделки
                           //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                           //'protectCode' => '12345', // код протекции
                           ));
                           
                              if (!empty($arTransfer["historyId"]))
                              {   
                             
     
                        # Вносим запись в список бонусов
# Зачилсяем юзверю
         $db->Query("UPDATE db_users_b SET bonuspayeer = bonuspayeer + '$sum' WHERE id = '$usid'");
         
         $db->Query("INSERT INTO db_bonus_listpayeer (user, user_id, sum, level, purse, date_add, date_del) VALUES ('$uname','$usid','$sum','$lv','$purse','$dadd','$ddel')");
         
         # Случайная очистка устаревших записей
         //$db->Query("DELETE FROM db_bonus_listpayeer WHERE date_del < '$dadd'");
         
         echo "<center><div class='alert'>Бонус в размере {$sum} копеек успешно выплачен!</div></center><BR />";
         
         $hide_form = true;
           
                              }
                              else
                              {
                             
                                 echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #1</font></center><BR />";   
                             
                              }
                           
                           
                           }else echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #2</font></center><BR />";
                           
                        }else echo "<center><font color = 'red'>Не удалось выплатить! Попробуйте позже #1</font></center><BR />";
                       
                     }else echo "<center><font color = 'red'>Не удалось выплатить! Попробуйте позже #2</font></center><BR />";
                     
                 
      }else echo "<center><font color = 'red'>Кошелек Payeer указан неверно! Смотрите образец!</font></center><BR />";
     
   }
         
         
      }
         
         # Показывать или нет форму
         if(!$hide_form){
?>




<form action="" method="post">
<table width="330" border="0" align="center">

<tr>
   
   
<?php

   IF($sonfig_purse["purse"])
   {$pur=$sonfig_purse["purse"];
   echo"<td><input style='float: left; margin-left: 100px;' type='text' name='purse' size='15' value='".$pur."' readonly='readonly'";
   echo"</td>";
   }

   else echo"
   <center><font color='#000;'>Введите кошелек Payeer</font>:</center>
   <td><input style='float: left; margin-left: 100px;' type='text' name='purse' size='15'/> </td>";


?>   
   
</tr>
 
<input style="height: 30px; margin-top: 1px; float:right;margin-right: 80px;" type="submit" name="bonus" value="Получить бонус" style="height: 30px; margin-top:10px; float:right" />

</table>
</form>

<?PHP

}

}else

{
$db->Query("SELECT * FROM db_bonus_listpayeer WHERE user_id = '$usid' order by ID DESC limit 1");
$u_data = $db->FetchArray();
$time = $u_data['date_del'] - $dadd;
$hours = floor($time/3600);
floor($minutes =($time/3600 - $hours)*60);
$seconds = ceil(($minutes - floor($minutes))*60);
$min=ceil($minutes)-1;

//echo $data['sec'] - time().' сек.';
//echo "$hours:$min:$seconds</font>";
echo "<center><div class='alert' id='error'>Вы уже получали бонус, следующий через $hours:$min:$seconds</div></font></center><BR />";
}

?>




<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
    <td colspan="5" align="center"><h4>Последние 20 бонусов</h4></td>
    </tr>
  <tr>
    <td align="center" class="m-tb">ID</td>
    <td align="center" class="m-tb">Пользователь</td>
   <td align="center" class="m-tb">Сумма</td>
   <td align="center" class="m-tb">Кошелек</td>
   <td align="center" class="m-tb">Дата</td>
   <td align="center" class="m-tb">Уровень</td>
   
  </tr>
  <?PHP
 

 
  $db->Query("SELECT * FROM db_bonus_listpayeer ORDER BY id DESC LIMIT 20");
 
 
   if($db->NumRows() > 0){
     
  $all_pay = 0;
  $all_pay_sum = 0;     
 
        while($bon = $db->FetchArray()){
   $all_pay ++;
   $all_pay_sum += $bon["sum"];         
     
      ?>
      <tr align="center" class="ltb">
          <td align="center"><?=$bon["id"]; ?></td>
          <td align="center"><?=$bon["user"]; ?></td>
          <td><b style="margin-right: -5px;"><?=$bon["sum"]; ?> <?=$config->VAL; ?></td>
          <td align="center"><?=substr($bon["purse"],0,-3); ?><font color = 'red'>XXX</font></td>
         <td><?=date("d.m.Y в H.i.s",$bon["date_add"]); ?></td>
         <td><?=$bon["level"]; ?> ур.</td>
        </tr>
     
     

     
      <?PHP
     
      }
     
$db->Query("SELECT * FROM db_payment WHERE status = '3' AND date_add > '$dt'");     
     
  ?>
 

 
  <?PHP 
 
   }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
 
  ?>
  </table>

<div class="clr"></div>     
  </div>
 

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #10 : 10 Июля 2017, 02:53:50 »
Изменил только заглушку, со 100 до 0 (что б проверить).
Внутреняя ошибка - сообщите о ней администратору! #1
 

Vorsing

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений За финансовую помощь форуму !!!
  • Дата регистрации: Май 2017
  • Расположение: Камчатка, Вилючинск
  • Возраст: 41
  • Сообщений: 65
  • Страна: ru
  • Поблагодарили: 3 раз(а)
  • Репутация +1/-0
  • Пол: Мужской
  • Дата рождения:
    1983-03-20
Бонус на PAYEER
« Ответ #11 : 10 Июля 2017, 03:51:59 »
Возможные причины: бесплатный домен; не подключен/неверно подключен магазин; магазин не прошел модерацию. Выплата бонуса со своего кошелька на свой кошелек.
 

kvozimir

  • снова в skype --> kvozimir
  • *
  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Более 2000 сообщений Топ 10 по сообщениям Топ 10 по созданным темам Репутация  более 25 Более 50 созданных тем Благодарность от форума За помощь пользователям За время в онлайне на форуме
  • Дата регистрации: Фев. 2016
  • Возраст: 32
  • Сообщений: 2028
  • Страна: ru
  • Поблагодарили: 242 раз(а)
  • Репутация +40/-1
  • Пол: Мужской
  • Дата рождения:
    1992-04-18
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #12 : 10 Июля 2017, 04:44:06 »
Возможные причины: бесплатный домен; не подключен/неверно подключен магазин; магазин не прошел модерацию. Выплата бонуса со своего кошелька на свой кошелек.
самый настоящий бред про магазин!!!! МАГАЗИН ни как не связан с ВЫПЛАТАМИ
если путаете такие вещи смысл вообще помогать...........

Добавлено сообщение: 10 Июля 2017, 05:05:32
ТС,я специально взял установил модуль чтоб проверить работает или нет,в итоге оказалось не работает,начал проверять
и что я увидел что для данного модуля создается совершенно отдельные ключ и ID для массовых платежей
и тут вопрос ты это делал именно для данного бонуса или нет?!
и тут два решения или доделать чутка модуль или изменить пару строк(одну)

в общем вот решения
№1 решение,находим в файле бонуса

$payeer = new rfs_payeer($config->numberf, $config->idf, $config->keyf);

меняем на

$payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);

№2 решение, заходим в _class.config.php и перед

}

добавляем

# PAYEER бонус
   public $numberf = 'P12345678'; //кошелек для бонуса
   public $idf = '374384062'; // ID массовых платежей для бонуса
   public $keyf = '35jrMq3zd4bL3aUs'; // ключ массовых платежей для бонуса

во втором случае нужно создать новые массовые платежи на паере

 

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #13 : 10 Июля 2017, 05:39:46 »
спасибо, но я специально переиминовывал $payeer. У меня тогда была какая то другая проблема, подумал, что если изменить имя все исправится, но я оказался не прав )
В общем, с тех пор так и оставил..
Сейчас пойду исправлю, но мне кажется, что навряд ли что то получится... Здесь проблема в это коде
 if (!empty($arTransfer["historyId"]))
                              {   
                             
     
                        # Вносим запись в список бонусов
# Зачилсяем юзверю
         $db->Query("UPDATE db_users_b SET bonuspayeer = bonuspayeer + '$sum' WHERE id = '$usid'");
         
         $db->Query("INSERT INTO db_bonus_listpayeer (user, user_id, sum, level, purse, date_add, date_del) VALUES ('$uname','$usid','$sum','$lv','$purse','$dadd','$ddel')");
         
         # Случайная очистка устаревших записей
         //$db->Query("DELETE FROM db_bonus_listpayeer WHERE date_del < '$dadd'");
         
         echo "<center><div class='alert'>Бонус в размере {$sum} копеек успешно выплачен!</div></center><BR />";
         
         $hide_form = true;
           
                              }
                              else
                              {
                             
                                 echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #1</font></center><BR />";   
                             
                              }

Добавлено сообщение: 10 Июля 2017, 05:46:41
Исправил PAYEER настройки в трех файлах:
_payment, _bonuspayeer, _class.config. Собстна, та же ошибка и вылазит..
 

APTEMOH

  • *
  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Болеее 500 сообщений Топ 10 по сообщениям За помощь пользователям Репутация более 15 Более 10 созданных тем
  • Дата регистрации: Сен. 2015
  • Расположение: Расположение
  • Сообщений: 529
  • Страна: th
  • Поблагодарили: 64 раз(а)
  • Репутация +19/-2
  • Пол: Мужской
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #14 : 10 Июля 2017, 11:24:34 »
Здесь проблема в это коде

Нет, в этом...

$arTransfer = $payeer->transfer(array(
                           'curIn' => 'RUB', // счет списания
                           'sum' => $sum_pay, // сумма получения
                           'curOut' => 'RUB', // валюта получения
                           'to' => $purse, // получатель (email)
                           //'to' => '+71112223344',  // получатель (телефон)
                           //'to' => 'P1000000',  // получатель (номер счета)
                           'comment' => iconv('windows-1251', 'utf-8', "Бонус {$uname} с проекта наш-денежный-город.рф")
                           //'anonim' => 'Y', // анонимный перевод
                           //'protect' => 'Y', // протекция сделки
                           //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                           //'protectCode' => '12345', // код протекции
                           ));

Я думаю, что $purse пустая переменная.

Добавлено сообщение: 10 Июля 2017, 11:25:56
+ На балансе должно быть больше 100 руб
if( ($balance) >= ($sum_pay+100)){

+ Выплачивать самому себе нельзя

+ Минимум для вывода 1 руб.
 

Rich-99000000

  • *
  • Оффлайн
  • Награды Более 7 лет на форуме Более 250 сообщений Репутация более 5 Топ 10 по сообщениям Благодарность от форума Более 10 созданных тем
  • Дата регистрации: Июль 2016
  • Возраст: 28
  • Сообщений: 460
  • Страна: ru
  • Поблагодарили: 136 раз(а)
  • Репутация +6/-2
  • Пол: Мужской
  • моды, сайты на заказ недорого >> ЛС
  • Дата рождения:
    1995-06-28
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #15 : 10 Июля 2017, 11:29:45 »
Интересно, где все берут нерабочие выплаты....
Что ли блог открыть по ведению и настройке ферм...
 
Пользователи, которые поблагодарили этот пост: APTEMOH

shans5

  • *
  • *
  • Оффлайн
  • Награды Более 8 лет на форуме За 1500 созданных тем Репутация более 75 более 4000 сообщений Топ 10 по сообщениям Топ 10 по созданным темам Бывает груб к участникам форума. За время в онлайне на форуме
  • Дата регистрации: Сен. 2015
  • Расположение: Регион 58
  • Возраст: 44
  • Сообщений: 4887
  • Страна: ru
  • Поблагодарили: 1351 раз(а)
  • Репутация +92/-10
  • Пол: Мужской
  • Всё только начинается !!!
  • Дата рождения:
    1979-06-30
Бонус на PAYEER
« Ответ #16 : 10 Июля 2017, 11:32:42 »
1) Берут в паблике )))))
2) Дело не только в нерабочих скриптах. Большинство юзеров просто не читают что именно нужно делать ,чтоб работало.
3) Блог открыть-  смотри строку 2 :be happy: Они не читают что нужно делать.
Подвергнуть критике, может любой.
Создать то,что будет подвергнуто критике,дано не каждому.
 

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #17 : 10 Июля 2017, 11:43:21 »
Цитировать
Я думаю, что $purse пустая переменная.
Даже если и пустая, то тогда как работает мой файл паемента? ) Ведь там получается, что она пустая тоже, но при это автовыплаты работают..

Цитировать
+ На балансе должно быть больше 100 руб
if( ($balance) >= ($sum_pay+100)){

+ Выплачивать самому себе нельзя

+ Минимум для вывода 1 руб.
Про это знаю. но не работает все равно ничего у меня (
 

Rich-99000000

  • *
  • Оффлайн
  • Награды Более 7 лет на форуме Более 250 сообщений Репутация более 5 Топ 10 по сообщениям Благодарность от форума Более 10 созданных тем
  • Дата регистрации: Июль 2016
  • Возраст: 28
  • Сообщений: 460
  • Страна: ru
  • Поблагодарили: 136 раз(а)
  • Репутация +6/-2
  • Пол: Мужской
  • моды, сайты на заказ недорого >> ЛС
  • Дата рождения:
    1995-06-28
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #18 : 10 Июля 2017, 11:53:14 »
зачем в коде " if(isset($_POST["purse"])){ "

если условие срабатывает уже на isset($_POST["bonus"]) ?
 

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #19 : 10 Июля 2017, 12:11:14 »
if(isset($_POST["bonus"])){
Здесь генерируется бонус.
$purse = ViewPurse($_POST["purse"]);
Ну а здесь заносится выплата.
Или я не догоняю чего то?
 

APTEMOH

  • *
  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Болеее 500 сообщений Топ 10 по сообщениям За помощь пользователям Репутация более 15 Более 10 созданных тем
  • Дата регистрации: Сен. 2015
  • Расположение: Расположение
  • Сообщений: 529
  • Страна: th
  • Поблагодарили: 64 раз(а)
  • Репутация +19/-2
  • Пол: Мужской
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #20 : 10 Июля 2017, 18:24:03 »
Или я не догоняю чего то?

Видимо. Это два обработчика событий, если совсем просто сказать.

Даже если и пустая, то тогда как работает мой файл паемента? )

Причем тут паймент? Это же получение бонуса. Это два разных файла.
 

kvozimir

  • снова в skype --> kvozimir
  • *
  • *
  • Оффлайн
  • Награды Более 8 лет на форуме Более 2000 сообщений Топ 10 по сообщениям Топ 10 по созданным темам Репутация  более 25 Более 50 созданных тем Благодарность от форума За помощь пользователям За время в онлайне на форуме
  • Дата регистрации: Фев. 2016
  • Возраст: 32
  • Сообщений: 2028
  • Страна: ru
  • Поблагодарили: 242 раз(а)
  • Репутация +40/-1
  • Пол: Мужской
  • Дата рождения:
    1992-04-18
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #21 : 10 Июля 2017, 18:34:42 »
то ли мы дураки,то ли нас за дураков держат

я только что проверил работоспособность модуля ,100% работает, сделав все действия о которых писал ранее

вот доки

http://dl3.joxi.net/drive/2017/07/10/0002/1976/186296/96/e9a5da695e.png
Бонус на PAYEER


Добавлено сообщение: [time]10 Июля 2017, 18:39:16[/time]
сорри не все действия а одно

заменил
  $payeer = new rfs_payeer($config->numberf, $config->idf, $config->keyf);

на это
                  
$payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);


P.S если уже не работает модуль ,видимо на сайте не работают выплаты
т.к ошибка 2 в любом случае означает что нет авторизации с паером
так что проверяем ID и КЛЮЧ
 

Rich-99000000

  • *
  • Оффлайн
  • Награды Более 7 лет на форуме Более 250 сообщений Репутация более 5 Топ 10 по сообщениям Благодарность от форума Более 10 созданных тем
  • Дата регистрации: Июль 2016
  • Возраст: 28
  • Сообщений: 460
  • Страна: ru
  • Поблагодарили: 136 раз(а)
  • Репутация +6/-2
  • Пол: Мужской
  • моды, сайты на заказ недорого >> ЛС
  • Дата рождения:
    1995-06-28
    Социальные сети:
    ВКонтакте
Бонус на PAYEER
« Ответ #22 : 10 Июля 2017, 18:43:44 »
$purse = ViewPurse($_POST["purse"]);
именно это не инициализация события, а проверка кошелька на "проф. пригодность".
Событие выдачи запустилость по $_POST["bonus"], смысла во втором уже нет поскольку они не друг за другом инициализируются. Превратите в рабочий вариант переписав закреп кошелька или раз это бонус то просто под фильтром пустите с заноской в бд (ip - wallet связкой) чтобы проверялся и ip получившего за сутки и кошель. А-ля если имеет несколько кошельков. Также стоит учитывать, что давненько пееровцы отказались от копеечных переводов. Следовательно мин сумма 1 руб.
 
Пользователи, которые поблагодарили этот пост: APTEMOH

wexlerАвтор темы

  • *
  • Оффлайн
  • Награды Более 6 лет на форуме !!! Более 50 сообщений Более 10 созданных тем
  • Дата регистрации: Июль 2017
  • Сообщений: 63
  • Страна: ru
  • Поблагодарили: 1 раз(а)
  • Репутация +0/-0
  • Пол: Мужской
Бонус на PAYEER
« Ответ #23 : 11 Июля 2017, 04:25:58 »
Цитировать
т.к ошибка 2 в любом случае означает что нет авторизации с паером
У меня вылетает ошибка #1.

Добавлено сообщение: [time]11 Июля 2017, 04:42:54[/time]
Короч перезалил все файлы, перезаписал БД. Все работает.
Уж простите что мурыжил вас здесь )


Добавлено сообщение: 11 Июля 2017, 10:32:26
Ребятушка, подсобите плиз.. опять.. )
В общем. переделал не много код, теперь имеет такой вид:
<?PHP
$_OPTIMIZATION["title"] = "Бонус на Payeer";
$usid = $_SESSION["user_id"];
$uname = $_SESSION["user"];
# Привязка кошелька
$db->Query("SELECT * FROM db_bonus_listpayeer WHERE user_id = '$usid' ORDER BY id DESC LIMIT 1");
$sonfig_purse = $db->FetchArray();

# Настройки бонусов
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();

if($user_data["insert_sum"] >= 1000 && $user_data["insert_sum"] <= 999999) {
$lv = 4;
$bonus_min = 600;
$bonus_max = 900;
} elseif ($user_data["insert_sum"] >= 400 && $user_data["insert_sum"] < 999)  {
$lv = 3;
$bonus_min = 400;
$bonus_max = 600;
} elseif($user_data["insert_sum"] >= 150 && $user_data["insert_sum"] < 399)  {
$lv = 2;
$bonus_min = 150;
$bonus_max = 399;
} elseif($user_data["insert_sum"] >= 50 && $user_data["insert_sum"] < 149)  {
$lv = 1;
$bonus_min = 1;
$bonus_max = 2; 
}
?>
<div class="s-bk-lf">
   <div class="acc-title">Бонус на PAYEER</div>
</div>
<div class="clr"></div>

<BR />
<p>
<div class="silver-bk">
Один раз в день вы можете получить бонус в зависимости от той суммы которую вы ввели в наш проект. Бонус делится на <b style="color: green;">4 уровня:[br /][br /]
1 уровень - Вы ввели в проект 50-149 рублей и получаете от 1 до 2 рублей[br /]
2 уровень - Вы ввели в проект 150-399 рублей и получаете от 2 до 3,5 рублей[br /]
3 уровень - Вы ввели в проект 400-999 рублей и получаете от 4 до 6 рублей[br /]
4 уровень - Вы ввели в проект сумму более 1000 рублей и получаете от 6 до 9 рублей[br /]</p>


Бонус выдаётся 1 раз в 24 часа. <BR />
Бонус выдается в <font color="blue">реальных деньгах</font>. <BR />
<?
// глушим новичков от разворовывания бюджета :)
$sumClose = 50; // заглушка на 10 рублей

if($user_data["insert_sum"] < $sumClose){
$rest = $sumClose - $user_data["insert_sum"];
?>
   
<center><font color="red"><p>Бонусы и статистика по ним доступны только после пополнения баланса на <?=$rest?> рублей и больше.[br /]
<form action="insert" method="post">
<center><input type="submit" name="sbor" value="Пополнить баланс" class="btn_in"></center>
</form> </center>

</div>
<?PHP

return;
}

?>

Сейчас вам доступен бонус в сумме от <font color="green" face="Arial" size="3"><?=$bonus_min;?></font> до <font color="green" face="Arial" size="3"><?=$bonus_max;?></font> <font color="blue"> рублей</font>.

<BR />


 
<BR /><BR />
<?PHP
$ddel = time() + 60*60*12;
$dadd = time();
$db->Query("SELECT COUNT(*) FROM db_bonus_listpayeer WHERE user_id = '$usid' AND date_del > '$dadd'");

$hide_form = false;
   if($db->FetchRow() == 0){
   
      # Выдача бонуса
      if(isset($_POST["bonus"])){
     
         $sumbon = rand($bonus_min, rand($bonus_min, $bonus_max) );
         

 function ViewPurse($purse){
 
  if( substr($purse,0,1) != "P" ) return false;
  if( !preg_match("/^[0-9]{7,8}$/", substr($purse,1)) ) return false;
  return $purse;
 }
   
   # Заносим выплату
   if(isset($_POST["purse"])){
     
      $purse = ViewPurse($_POST["purse"]);
      $sum = sprintf("%.2f",$sumbon/0.9);
      $val = "RUB";
     
      if($purse !== false){
         
                     
                     ### Делаем выплату ###   
                         $payeer = new rfs_payeer($config->AccountNumber, $config->apiId, $config->apiKey);
                     if ($payeer->isAuth())
                     {
                       
                        $arBalance = $payeer->getBalance();
                        if($arBalance["auth_error"] == 0)
                        {
                           
                           $sum_pay = round( ($sum), 2);
                           
                           $balance = $arBalance["balance"]["RUB"]["DOSTUPNO"];
                           if( ($balance) >= ($sum_pay+1)){
                           
                           
                           
                           $arTransfer = $payeer->transfer(array(
                           'curIn' => 'RUB', // счет списания
                           'sum' => $sum_pay, // сумма получения
                           'curOut' => 'RUB', // валюта получения
                           'to' => $purse, // получатель (email)
                           //'to' => '+71112223344',  // получатель (телефон)
                           //'to' => 'P1000000',  // получатель (номер счета)
                           'comment' => iconv('windows-1251', 'utf-8', "Бонус {$uname} с проекта наш-денежный-город.рф")
                           //'anonim' => 'Y', // анонимный перевод
                           //'protect' => 'Y', // протекция сделки
                           //'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
                           //'protectCode' => '12345', // код протекции
                           ));
                           
                              if (!empty($arTransfer["historyId"]))
                              {   
                             
     
                        # Вносим запись в список бонусов
# Зачилсяем юзверю
         $db->Query("UPDATE db_users_b SET bonuspayeer = bonuspayeer + '$sum' WHERE id = '$usid'");
         
         $db->Query("INSERT INTO db_bonus_listpayeer (user, user_id, sum, level, purse, date_add, date_del) VALUES ('$uname','$usid','$sum','$lv','$purse','$dadd','$ddel')");
         
         # Случайная очистка устаревших записей
         //$db->Query("DELETE FROM db_bonus_listpayeer WHERE date_del < '$dadd'");
         
         echo "<center><div class='alert'>Бонус в размере {$sum} рублей успешно выплачен!</div></center><BR />";
         
         $hide_form = true;
           
                              }
                              else
                              {
                             
                                 echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #1</font></center><BR />";   
                             
                              }
                           
                           
                           }else echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору! #2</font></center><BR />";
                           
                        }else echo "<center><font color = 'red'>Не удалось выплатить! Попробуйте позже #1</font></center><BR />";
                       
                     }else echo "<center><font color = 'red'>Не удалось выплатить! Попробуйте позже #2</font></center><BR />";
                     
                 
      }else echo "<center><font color = 'red'>Кошелек Payeer указан неверно! Смотрите образец!</font></center><BR />";
     
   }
         
         
      }
         
         # Показывать или нет форму
         if(!$hide_form){
?>

<form action="" method="post">
<table width="330" border="0" align="center">
<tr>

<?php

   IF($sonfig_purse["purse"])
   {$pur=$sonfig_purse["purse"];
   echo"<td><input style='float: left; margin-left: 100px;' type='text' name='purse' size='15' value='".$pur."' readonly='readonly'";
   echo"</td>";
   }

   else echo"
   <center><font color='#000;'>Введите кошелек Payeer</font>:</center>
   <td><input style='float: left; margin-left: 100px;' type='text' name='purse' size='15'/> </td>[br /]";

?>   
   
</tr>
 
<input style="height: 30px; margin-top: 1px; float:right;margin-right: 80px;" type="submit" name="bonus" value="Получить бонус" style="height: 30px; margin-top:10px; float:right" />

</table>
</form>

<?PHP

}

}else

{
$db->Query("SELECT * FROM db_bonus_listpayeer WHERE user_id = '$usid' order by ID DESC limit 1");
$u_data = $db->FetchArray();
$time = $u_data['date_del'] - $dadd;
$hours = floor($time/3600);
floor($minutes =($time/3600 - $hours)*60);
$seconds = ceil(($minutes - floor($minutes))*60);
$min=ceil($minutes)-1;

//echo $data['sec'] - time().' сек.';
//echo "$hours:$min:$seconds</font>";
echo "<center><div class='alert' id='error'>Вы уже получали бонус, следующий через $hours:$min:$seconds</div></font></center><BR />";
}

?>

<table cellpadding='3' cellspacing='0' border='0' bordercolor='#336633' align='center' width="99%">
  <tr>
    <td colspan="5" align="center"><h4>Последние 10 бонусов</h4></td>
    </tr>
  <tr>
    <td align="center" class="m-tb">ID</td>
    <td align="center" class="m-tb">Пользователь</td>
   <td align="center" class="m-tb">Сумма</td>
   <td align="center" class="m-tb">Кошелек</td>
   <td align="center" class="m-tb">Дата</td>
   <td align="center" class="m-tb">Уровень</td>
   
  </tr>
  <?PHP

  $db->Query("SELECT * FROM db_bonus_listpayeer ORDER BY id DESC LIMIT 10");
 
 
   if($db->NumRows() > 0){
     
  $all_pay = 0;
  $all_pay_sum = 0;     
 
        while($bon = $db->FetchArray()){
   $all_pay ++;
   $all_pay_sum += $bon["sum"];         
     
      ?>
      <tr align="center" class="ltb">
          <td align="center"><?=$bon["id"]; ?></td>
          <td align="center"><?=$bon["user"]; ?></td>
          <td><?=$bon["sum"]; ?> <?=$config->VAL; ?></td>
          <td align="center"><?=substr($bon["purse"],0,-3); ?><font color = 'red'>XXX</font></td>
         <td><?=date("d.m.Y в H.i.s",$bon["date_add"]); ?></td>
         <td><?=$bon["level"]; ?> ур.</td>
        </tr>
     
     

     
      <?PHP
     
      }
     
$db->Query("SELECT * FROM db_payment WHERE status = '3' AND date_add > '$dt'");     
     
  ?>
 

 
  <?PHP 
 
   }else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
 
  ?>
</table>

<div class="clr"></div>
</div>
Вот.
Мой целью бло достижение того, что бы убрать все числа больше 10. То есть, что бы здесь "
<p>
Один раз в день вы можете получить бонус в зависимости от той суммы которую вы ввели в наш проект. Бонус делится на <b style="color: green;">4 уровня:[br /][br /]
  </div>
<div class="silver-bk">
1 уровень - Вы ввели в проект 100-299,99 рублей и получаете от 100 до 299 копеек[br /]
"
Можно было написать рублей, а не копеек.
Сейчас же происходит следующее.
При получении бонуса, всегда выходит фиксированная сумма, без рандома. Как исправить?
 

takebet

Бонус на PAYEER
« Ответ #24 : 12 Июля 2017, 08:46:34 »
суммы точные ввести надо, в коде стоит 399, а в тексте написано до 3,5 руб. Но не это хотел написать, вот:

if($user_data["insert_sum"] >= 900 && $user_data["insert_sum"] <= 999999) {
$lv = 4;
$bonus_min = 600;
$bonus_max = 900;
} elseif ($user_data["insert_sum"] >= 350 && $user_data["insert_sum"] < 599.99)  {
$lv = 3;
$bonus_min = 350;
$bonus_max = 599;
} elseif($user_data["insert_sum"] >= 150 && $user_data["insert_sum"] < 349.99)  {
$lv = 2;
$bonus_min = 200;
$bonus_max = 349;
} elseif($user_data["insert_sum"] >= 50 && $user_data["insert_sum"] < 149.99)  {
$lv = 1;
$bonus_min = 100;
$bonus_max = 199; 
}
?>

<div class="s-bk-lf">
   <div class="acc-title">Бонус на PAYEER</div>
</div>
<div class="clr"></div>

<BR />
<p>
<div class="silver-bk">
Один раз в день вы можете получить бонус в зависимости от той суммы которую вы ввели в наш проект. Бонус делится на <b style="color: green;">4 уровня:[br /][br /]
1 уровень - Вы ввели в проект 50-149 рублей и получаете от 1 до 2 рублей[br /]
2 уровень - Вы ввели в проект 150-349 рублей и получаете от 2 до 3,5 рублей[br /]
3 уровень - Вы ввели в проект 350-599 рублей и получаете от 3,5 до 6 рублей[br /]
4 уровень - Вы ввели в проект сумму более 600 рублей и получаете от 6 до 9 рублей[br /]</p>
 
Теги: