в финале все решилось еще проще и правильней.
250 строку оставляем как и есть
$sql="SELECT * FROM users WHERE mid=0";
$price=$p->{price};
нафиг не нужно добавлять
после
$h=&Money($money_param);
$got_money=sprintf("%.2f",$h->{money});
$money_over=$h->{money_over};
$service_list=$h->{service_list};
chomp $service_list;
вставляем:
if ($got_money > $start_money)
{
$got_money = 0;
$perehodim = 0;
}
else
{
$perehodim = 1;
}
после
вставляем:
if ($perehodim == 1)
{
$sql="INSERT INTO pays ".
"(mid,cash,time,admin_id,admin_ip,bonus,reason,coment,type,category) VALUES".
"($id,-$got_money,$time_last,0,0,'y','$reason','$coment',10,110)";
}
else
{
$sql="INSERT INTO pays ".
"(mid,cash,time,admin_id,admin_ip,bonus,reason,coment,type,category) VALUES".
"($id,-$got_money,$time_last,0,0,'y','$reason','Недостаточно средств для перехода на новый месяц',10,110)";
}