Введите сумму выплаты
Введите сумму выплаты
Делается просто - также я учёл комментарии и баги, которые были в старой статье старого сайта.

Открываем convert.php и вставляем после:
.::Заказ выплаты::.
<?
$user=uc($_SESSION["username"]);
require('config.php');
$sql = "SELECT * FROM tb_users WHERE username='$user'";
$result = mysql_query($sql);  
$row = mysql_fetch_array($result);
mysql_close($con);

Следующий код:
if(!(isset($_POST["howmany"])))
{
  ?><center><form action="" method="POST"><input type="text" name="howmany" value="<?=$row["money"] ?>"><br><input type="submit" value="Выплатить"></form></center><br>
<?
  include('footer.php');
  exit();
}
$howmany=$_POST["howmany"];
if($howmany > $row["money"])
{
  echo "<img src="images/error.png" align="middle"> У вас нет столько денег!!!";
include('footer.php');
exit();
}
if($howmany == '')
{
  echo "<img src="images/error.png" align="middle"> Неправильный ввод!!!";
include('footer.php');
exit();
}
if($howmany < 0)
{
  echo "<img src="images/error.png" align="middle"> Неправильный ввод!!!";
include('footer.php');
exit();
}

Далее чуток ниже замените:
if ($row["money"]<$row1["price"])

{

  echo "<img src="images/error.png" align="middle"> На вашем балансе не набрана минимальная для вывода сумма!!!";

  include('footer.php');

  exit();

}

На:
if ($howmany<$row1["price"])

{

  echo "<img src="images/error.png" align="middle"> На вашем балансе не набрана минимальная для вывода сумма!!!";

  include('footer.php');

  exit();

}

И ещё ниже замените:
$money=$row["money"];

На:

$usermoney=$row["money"];
$money=$howmany;

И всё вроде бы ничего, но надо бы сделать, чтобы у юзера отнималась сумма. Для этого вот это:
$sql="update tb_users set money=0 where username='$username'";
mysql_query($sql) or die(mysql_error());

Замените вот этим:
$usermoney=$usermoney-$money;
$sql="update tb_users set money='$usermoney' where username='$username'";
mysql_query($sql) or die(mysql_error());

А теперь учтём баг, описанный в комментариях. Заключается в том, что если ввести желаемую сумму и в качестве разделителя использовать запятую, то сумма с баланса не снимается (к примеру не 0.50, а 0,50)

Правим простой функцией str_replace

Вернёмся к первому шагу и найдём:
$howmany=$_POST["howmany"];

Меняем на:
$howmany=str_replace(",",".",$_POST["howmany"]);

Вот и всё - комментируем.

P.S. Недавно было нечего делать и я посмотрел сериал iCarly и я не пожалел. Это замечательное комедийное шоу, которое может поднять настроение.


Рубрика: Бесплатное » Дополнения   |   Автор: Alex   |   Просмотры: 4419
Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.