bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
- Сообщения
- 227
- Реакции
- 48
- Сообщения
- 227
- Реакции
- 48
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
В базе db_config измени 100 на 1 , поле ser_per_wmrbit5060 написал(а):У меня все в конфиге выражается в серебре, а как сделать чтоб было в рублях ?
Так же по скрипту стоит округление, нужно поискать. Но с базой должно помочь.
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
Заказываю на выплату 0.85 и пишет - Вы указали больше, чем имеется на вашем счету!!!APTEMOH написал(а):В базе db_config измени 100 на 1 , поле ser_per_wmr
Так же по скрипту стоит округление, нужно поискать. Но с базой должно помочь.
В файле выплат убрать округление. Там все дробные в целые переводит.bit5060 написал(а):Заказываю на выплату 0.85 и пишет - Вы указали больше, чем имеется на вашем счету!!!
Ищите переменную $sum, в начале будет.
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
как она примерно выглядит и что надо с ней сделать ?APTEMOH написал(а):В файле выплат убрать округление. Там все дробные в целые переводит.
Ищите переменную $sum, в начале будет.
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
bit5060 написал(а):как она примерно выглядит и что надо с ней сделать ?
PHP:
$sum = intval($_POST["sum"]);
PHP:
$sum = $_POST["sum"];
bit5060 написал(а):мне надо чтоб средства зачисляемые на счет для покупок делились на 100. Как это сделать ?
PHP:
$sum = $sum / 100;
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
<?PHP
include("inc/_user_menu.php");
?>
<div class=""> <div class="s-bk-lf">
<div class="title">ЗАКАЗ ВЫПЛАТЫ</div>
<?PHP
$_OPTIMIZATION["title"] = "Аккаунт - Заказ выплаты";
$usid = $_SESSION["user_id"];
$usname = $_SESSION["user"];
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();
$db->Query("SELECT * FROM db_config WHERE id = '1' LIMIT 1");
$sonfig_site = $db->FetchArray();
$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 1");
$sonfig_purse = $db->FetchArray();
$status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");
# Минималка !
$minPay = 1;
#Максималка
$maxPay = 10;
?>
<center>
<a href="" class="payeer"><font color="#333333">PAY</font>EER</a>
</center>
<br />
<?PHP
$ddel = time() + 60*60*8;
$dadd = time();
function ViewPurse($purse){
if( substr($purse,0,1) != "P" ) return false;
if( !ereg("^[0-9]{7}$", substr($purse,1)) AND !ereg("^[0-9]{8}$", substr($purse,1)) ) return false;
return $purse;
}
/*
# Проверка на сумму вывода
$db->Query("SELECT sum(`sum`) FROM db_pay_dat WHERE user_id = '$usid' AND date_del > '$dadd'");
$bbbb = $db->FetchArray();
$out_today_step = 1;
$out_today = round( ($bbbb['sum'] / $sonfig_site["ser_per_wmr"]), 2);
$out_today_max = ceil($user_data["insert_sum"]/$out_today_step) * $out_today_step / 10;
$out_today_now = round( (intval($_POST["sum"]) / $sonfig_site["ser_per_wmr"]), 2);
if ($out_today_max < $out_today + $out_today_now) {
$out_today_available = $out_today_max - $out_today;
$out_today_error = "<center><font color = '#c33d2b'>
Сумма макс. суточного вывода зависит от Ваших общих пополнений</font><br>
<font color = '#2A8758'> Доступно для вывода сегодня: <font color = '#c33d2b'>$out_today_available руб.</font>
</font></center><BR />
";
echo $out_today_error;
} else
*/
# Проверка на дату выплаты
$db->Query("SELECT COUNT(*) FROM db_pay_dat WHERE user_id = '$usid' AND date_del > '$dadd'");
if($db->FetchRow() == 0){
echo "$purse $sum";
# Заносим выплату
if(isset($_POST["purse"])){
$purse = ViewPurse($_POST["purse"]);
$sum = $_POST["sum"];
$val = "RUB";
if ($sum <= $maxPay){
if($purse !== false){
if($sum >= $minPay){
if($sum <= $user_data["money_p"]){
# Проверяем на существующие заявки
$db->Query("SELECT COUNT(*) FROM db_payment WHERE user_id = '$usid' AND (status = '0' OR status = '1')");
if($db->FetchRow() == 0){
### Делаем выплату ###
$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 / $sonfig_site["ser_per_wmr"]), 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', "Выплата с проекта My-Biziness.ru")
//'anonim' => 'Y', // анонимный перевод
//'protect' => 'Y', // протекция сделки
//'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
//'protectCode' => '12345', // код протекции
));
if (!empty($arTransfer["historyId"]))
{
# Снимаем с пользователя
$db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$usid'");
# Вставляем запись в выплаты
$da = time();
$dd = $da + 60*60*24*15;
$ppid = $arTransfer["historyId"];
$db->Query("INSERT INTO db_payment (user, user_id, purse, sum, valuta, serebro, payment_id, date_add, status)
VALUES ('$usname','$usid','$purse','$sum_pay','RUB', '$sum','$ppid','".time()."', '3')");
$db->Query("UPDATE db_users_b SET payment_sum = payment_sum + '$sum_pay' WHERE id = '$usid'");
$db->Query("UPDATE db_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
# заносим защиту от большой выплаты и дату
$db->Query("INSERT INTO db_pay_dat (user, user_id, sum, date_add, date_del) VALUES ('$uname','$usid','$sum','$dadd','$ddel')");
# Случайная очистка устаревших записей
$db->Query("DELETE FROM db_pay_dat WHERE date_del < '$dadd'");
echo "<center><font color = 'green'>Выплачено!</font></center><BR />";
}
else
{
echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору!</font></center><BR />";
}
}else echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору!</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'>У вас имеются необработанные заявки. Дождитесь их выполнения.</font></center><BR />";
}else echo "<center><font color = 'red'>Вы указали больше, чем имеется на вашем счету</font></center><BR />";
}else echo "<center><font color = 'red'>Вы указали больше, чем имеется на вашем счету!!!</font></center><BR />";
}else echo "<center><font color = 'red'>Кошелек Payeer указан неверно! Пример P12345567!</font></center><BR />";
}else echo "<center><font color = 'red'>Вы не можете вывести более 10 рублей за один раз</font></center><BR />";
}
}else echo "<center><font color = '#b06100'>Выплаты можно совершать только один раз каждые 8 часов!</font></center><BR />";
?>
<form action="" method="post">
<table width="99%" border="0" align="center">
<tr>
<?php
IF($sonfig_purse["purse"])
{$pur=$sonfig_purse["purse"];
echo"<td><center><input type='text' class='backlight' placeholder='Введите кошелек Payeer ' name='purse' size='15' value='".$pur."' readonly='readonly'";
echo"</td>";
}
else echo"<td><center><input type='text' class='backlight' placeholder='Введите кошелек Payeer ' name='purse' size='15'/> </td>";
?>
</tr>
<tr>
<td><center>
<br />
<input type="text" name="sum" class="backlight" id="sum" value="<?=sprintf("%.2f",$prof_data["money_p"]); ?>" size="15" onkeyup="PaymentSum();" /></td>
</tr>
<tr>
<td style=" display:none"><center>
Получаете рублей:<br />
<input type="text" class="backlight" name="res" id="res_sum" value="0" size="15" disabled="disabled"/>
<font color="#4060A1"><input type="hidden" name="per" id="RUB" value="<?=$sonfig_site["ser_per_wmr"]; ?>" disabled="disabled"/></font>
<input type="hidden" name="per" id="min_sum_RUB" value="0.5" disabled="disabled"/>
<input type="hidden" name="val_type" id="val_type" value="RUB" />
</td>
</tr>
<tr>
<td colspan="2" align="center"><br /><br /><input type="submit" name="swap" value="Заказать выплату" class="button17" /></td>
</tr>
</table>
</form>
<script language="javascript">PaymentSum(); SetVal();</script>
<br />
<table cellpadding='3' cellspacing='0' border='1' align='center' width="700px">
<tr>
<td colspan="5" align="center" class="title7" style="text-align:center">Последние 10 выплат</td>
</tr>
<tr>
<td align="center" class="title7"><b>Получаете</b></td>
<td align="center" class="title7"><b>Кошелек</b></td>
<td align="center" class="title7"><b>Дата</b></td>
<td align="center" class="title7"><b>Статус</b></td>
</tr>
<?PHP
$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 20");
if($db->NumRows() > 0){
while($ref = $db->FetchArray()){
?>
<tr class="htt">
<td align="center" class="message1"><?=sprintf("%.4f",$ref["sum"] - $ref["comission"]); ?> <?=$ref["valuta"]; ?></td>
<td align="center" class="message1"><?=$ref["purse"]; ?></td>
<td align="center" class="message1"><?=date("d.m.Y",$ref["date_add"]); ?></td>
<td align="center" class="message1"><?=$status_array[$ref["status"]]; ?></td>
</tr>
<?PHP
}
}else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
?>
</table><div class="clr"></div>
</div><br /><br /><br /> <div style="margin-top:-50px;"></div>
<?PHP
include("inc/_stats.php");
?>
include("inc/_user_menu.php");
?>
<div class=""> <div class="s-bk-lf">
<div class="title">ЗАКАЗ ВЫПЛАТЫ</div>
<?PHP
$_OPTIMIZATION["title"] = "Аккаунт - Заказ выплаты";
$usid = $_SESSION["user_id"];
$usname = $_SESSION["user"];
$db->Query("SELECT * FROM db_users_b WHERE id = '$usid' LIMIT 1");
$user_data = $db->FetchArray();
$db->Query("SELECT * FROM db_config WHERE id = '1' LIMIT 1");
$sonfig_site = $db->FetchArray();
$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 1");
$sonfig_purse = $db->FetchArray();
$status_array = array( 0 => "Проверяется", 1 => "Выплачивается", 2 => "Отменена", 3 => "Выплачено");
# Минималка !
$minPay = 1;
#Максималка
$maxPay = 10;
?>
<center>
<a href="" class="payeer"><font color="#333333">PAY</font>EER</a>
</center>
<br />
<?PHP
$ddel = time() + 60*60*8;
$dadd = time();
function ViewPurse($purse){
if( substr($purse,0,1) != "P" ) return false;
if( !ereg("^[0-9]{7}$", substr($purse,1)) AND !ereg("^[0-9]{8}$", substr($purse,1)) ) return false;
return $purse;
}
/*
# Проверка на сумму вывода
$db->Query("SELECT sum(`sum`) FROM db_pay_dat WHERE user_id = '$usid' AND date_del > '$dadd'");
$bbbb = $db->FetchArray();
$out_today_step = 1;
$out_today = round( ($bbbb['sum'] / $sonfig_site["ser_per_wmr"]), 2);
$out_today_max = ceil($user_data["insert_sum"]/$out_today_step) * $out_today_step / 10;
$out_today_now = round( (intval($_POST["sum"]) / $sonfig_site["ser_per_wmr"]), 2);
if ($out_today_max < $out_today + $out_today_now) {
$out_today_available = $out_today_max - $out_today;
$out_today_error = "<center><font color = '#c33d2b'>
Сумма макс. суточного вывода зависит от Ваших общих пополнений</font><br>
<font color = '#2A8758'> Доступно для вывода сегодня: <font color = '#c33d2b'>$out_today_available руб.</font>
</font></center><BR />
";
echo $out_today_error;
} else
*/
# Проверка на дату выплаты
$db->Query("SELECT COUNT(*) FROM db_pay_dat WHERE user_id = '$usid' AND date_del > '$dadd'");
if($db->FetchRow() == 0){
echo "$purse $sum";
# Заносим выплату
if(isset($_POST["purse"])){
$purse = ViewPurse($_POST["purse"]);
$sum = $_POST["sum"];
$val = "RUB";
if ($sum <= $maxPay){
if($purse !== false){
if($sum >= $minPay){
if($sum <= $user_data["money_p"]){
# Проверяем на существующие заявки
$db->Query("SELECT COUNT(*) FROM db_payment WHERE user_id = '$usid' AND (status = '0' OR status = '1')");
if($db->FetchRow() == 0){
### Делаем выплату ###
$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 / $sonfig_site["ser_per_wmr"]), 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', "Выплата с проекта My-Biziness.ru")
//'anonim' => 'Y', // анонимный перевод
//'protect' => 'Y', // протекция сделки
//'protectPeriod' => '3', // период протекции (от 1 до 30 дней)
//'protectCode' => '12345', // код протекции
));
if (!empty($arTransfer["historyId"]))
{
# Снимаем с пользователя
$db->Query("UPDATE db_users_b SET money_p = money_p - '$sum' WHERE id = '$usid'");
# Вставляем запись в выплаты
$da = time();
$dd = $da + 60*60*24*15;
$ppid = $arTransfer["historyId"];
$db->Query("INSERT INTO db_payment (user, user_id, purse, sum, valuta, serebro, payment_id, date_add, status)
VALUES ('$usname','$usid','$purse','$sum_pay','RUB', '$sum','$ppid','".time()."', '3')");
$db->Query("UPDATE db_users_b SET payment_sum = payment_sum + '$sum_pay' WHERE id = '$usid'");
$db->Query("UPDATE db_stats SET all_payments = all_payments + '$sum_pay' WHERE id = '1'");
# заносим защиту от большой выплаты и дату
$db->Query("INSERT INTO db_pay_dat (user, user_id, sum, date_add, date_del) VALUES ('$uname','$usid','$sum','$dadd','$ddel')");
# Случайная очистка устаревших записей
$db->Query("DELETE FROM db_pay_dat WHERE date_del < '$dadd'");
echo "<center><font color = 'green'>Выплачено!</font></center><BR />";
}
else
{
echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору!</font></center><BR />";
}
}else echo "<center><font color = 'red'>Внутреняя ошибка - сообщите о ней администратору!</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'>У вас имеются необработанные заявки. Дождитесь их выполнения.</font></center><BR />";
}else echo "<center><font color = 'red'>Вы указали больше, чем имеется на вашем счету</font></center><BR />";
}else echo "<center><font color = 'red'>Вы указали больше, чем имеется на вашем счету!!!</font></center><BR />";
}else echo "<center><font color = 'red'>Кошелек Payeer указан неверно! Пример P12345567!</font></center><BR />";
}else echo "<center><font color = 'red'>Вы не можете вывести более 10 рублей за один раз</font></center><BR />";
}
}else echo "<center><font color = '#b06100'>Выплаты можно совершать только один раз каждые 8 часов!</font></center><BR />";
?>
<form action="" method="post">
<table width="99%" border="0" align="center">
<tr>
<?php
IF($sonfig_purse["purse"])
{$pur=$sonfig_purse["purse"];
echo"<td><center><input type='text' class='backlight' placeholder='Введите кошелек Payeer ' name='purse' size='15' value='".$pur."' readonly='readonly'";
echo"</td>";
}
else echo"<td><center><input type='text' class='backlight' placeholder='Введите кошелек Payeer ' name='purse' size='15'/> </td>";
?>
</tr>
<tr>
<td><center>
<br />
<input type="text" name="sum" class="backlight" id="sum" value="<?=sprintf("%.2f",$prof_data["money_p"]); ?>" size="15" onkeyup="PaymentSum();" /></td>
</tr>
<tr>
<td style=" display:none"><center>
Получаете рублей:<br />
<input type="text" class="backlight" name="res" id="res_sum" value="0" size="15" disabled="disabled"/>
<font color="#4060A1"><input type="hidden" name="per" id="RUB" value="<?=$sonfig_site["ser_per_wmr"]; ?>" disabled="disabled"/></font>
<input type="hidden" name="per" id="min_sum_RUB" value="0.5" disabled="disabled"/>
<input type="hidden" name="val_type" id="val_type" value="RUB" />
</td>
</tr>
<tr>
<td colspan="2" align="center"><br /><br /><input type="submit" name="swap" value="Заказать выплату" class="button17" /></td>
</tr>
</table>
</form>
<script language="javascript">PaymentSum(); SetVal();</script>
<br />
<table cellpadding='3' cellspacing='0' border='1' align='center' width="700px">
<tr>
<td colspan="5" align="center" class="title7" style="text-align:center">Последние 10 выплат</td>
</tr>
<tr>
<td align="center" class="title7"><b>Получаете</b></td>
<td align="center" class="title7"><b>Кошелек</b></td>
<td align="center" class="title7"><b>Дата</b></td>
<td align="center" class="title7"><b>Статус</b></td>
</tr>
<?PHP
$db->Query("SELECT * FROM db_payment WHERE user_id = '$usid' ORDER BY id DESC LIMIT 20");
if($db->NumRows() > 0){
while($ref = $db->FetchArray()){
?>
<tr class="htt">
<td align="center" class="message1"><?=sprintf("%.4f",$ref["sum"] - $ref["comission"]); ?> <?=$ref["valuta"]; ?></td>
<td align="center" class="message1"><?=$ref["purse"]; ?></td>
<td align="center" class="message1"><?=date("d.m.Y",$ref["date_add"]); ?></td>
<td align="center" class="message1"><?=$status_array[$ref["status"]]; ?></td>
</tr>
<?PHP
}
}else echo '<tr><td align="center" colspan="5">Нет записей</td></tr>'
?>
</table><div class="clr"></div>
</div><br /><br /><br /> <div style="margin-top:-50px;"></div>
<?PHP
include("inc/_stats.php");
?>
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
Это говорит о том, что нет подключения к паеру для выплаты.bit5060 написал(а):Вот сделал как вы сказали, но теперь пишет - Внутреняя ошибка - сообщите о ней администратору!
Или не верно прописаны в конфиге пароли.
Или выводите на свой кошелек.
Или выводите меньше чем 0.1 руб.
Нужно делать вывод ошибки паера и смотреть.
bit5060
Участник
- Сообщения
- 102
- Реакции
- 2
Огромное спасибо за помощь ! Но возникла другая проблема ((( При пополнении деньги списываются и отражаются в базе db_payment_insert, но не поступают на баланс пользователя ((APTEMOH написал(а):Это говорит о том, что нет подключения к паеру для выплаты.
Или не верно прописаны в конфиге пароли.
Или выводите на свой кошелек.
Или выводите меньше чем 0.1 руб.
Нужно делать вывод ошибки паера и смотреть.