Вход Регистрация
Файл: bukmeker/put.on/control/index.php
Строк: 68
<?
#по умолчанию устанавливаем показ формы в true - т.е. она будет отображаться
#когда запускается обработчик, выставляем $form в false, чтобы отключить показ формы
$form true;

if (isset(
$_GET['event']) && isset($_GET['outcome'])) {
    
    
#принимаем ID-события, на которое ставит пользователь 
    
$idEvent clear($_GET['event']);
    
    
#сделаем проверочку на пустоту переменной
    
$idEvent = ($idEvent) ? $idEvent 0;
    
    
#ID-пользователя
    
$idUser ID_USER;
    
    
#делаем запрос в БД, чтобы узнать: не делал ли пользователь ставку на это событие
    
$queryBet $db -> query("SELECT * FROM betting WHERE idsob = ?i AND who = ?i"$idEvent$idUser);
    
    
#если запрос прошел
    
if ($queryBet) {
        
#считаем кол-во найденных ставок
        
$dataBet $db -> numRows($queryBet);
        
#и если есть хотя бы 1, то выдаем ошибку
        
if ($dataBet 0fatalError('Вы уже делали ставку на это событие!');
    }
    
    
$timeNow time();
    
    
#делаем запрос в БД, чтобы узнать не старое ли это событие, которое уже завершилось
    
$quetyOldEvent $db -> query("SELECT * FROM events WHERE id = ?i"$idEvent);
    
$dataOldEvent $db -> fetch($quetyOldEvent);
    
    
#проверяем не старое ли это событие
    
if ($dataOldEvent['old'] || $dataOldEvent['timestart'] < $timeNowfatalError('Это устаревшее событие! Не пытайтесь обмануть систему!');
    
    
    
    
#принимаем выбор исхода (1, 2, или 3)
    
$idOutCome clear($_GET['outcome']);
    
    
#т.к. исхода только 3 - победа 1, победа 2, ничья, то проверяем, не выбрано ли чего-то "четвертого"
    
$idOutCome = ($idOutCome && $idOutCome <= 3) ? $idOutCome false;
    
    
#если выбранный исход существует, то...
    
if ($idOutCome) {  
    
    
#записываем ID-события в сессию, чтобы не передавать потом лишних данных
    
$_SESSION['idEvent'] = $idEvent;    
    
    
    
#выбираем из БД все, что известно про данное событие 
    
$queryEvent $db -> query("SELECT * FROM events WHERE id = ?i "$idEvent);
    
    
#обрабатываем запрос для дальнейшего использования
    
$event $db -> fetch($queryEvent);
    
    
    
#проверяем и записываем, на кого поставил пользователь (1 - на первого соперника, 2 - на второго соперника, 3 - на ничью)
    
if ($idOutCome == 1) { 
                            
#название команды, на которую ставят
                            
$outCome $event['team1'];
                            
                            
#запишем в сессию на кого поставили (1,2, или 3)
                            
$_SESSION['outCome'] = 1;
                            
                            
#записываем коэффициент в сессию
                            
$_SESSION['bet'] = $event['factor1'];
                         }
                         
                         
                         
    if (
$idOutCome == 2) {
                            
#название команды, на которую ставят
                            
$outCome $event['team2'];
                            
                            
#запишем в сессию на кого поставили (1,2, или 3)
                            
$_SESSION['outCome'] = 2;
                            
                            
#записываем коэффициент в сессию
                            
$_SESSION['bet'] = $event['factor2'];
                         }
                         
                         
                           
    if (
$idOutCome == 3) {  
                            
#если ставят на ничью
                            
$outCome 'Ничья';
                            
                            
#запишем в сессию на кого поставили (1,2, или 3)
                            
$_SESSION['outCome'] = 3;
                            
                            
#записываем коэффициент в сессию
                            
$_SESSION['bet'] = $event['factor0'];
                         }
                            
    
    
#запишем название противоборства (например, Спартак - Зенит)
    
$teamWar $event['team1']." - ".$event['team2'];
    
    
    } else 
errors('Такого исхода события не существует!');
}

if (isset(
$_POST['goBet']) && isset($_SESSION['idEvent']) && isset($_SESSION['bet'])) {
    
$form false;
    
   
$amount clear($_POST['amount']); 
   
$balance userBalance(ID_USER);
   
  
 if (
$amount && ($balance >= $amount) && ($amount >= $settingsSystem['min_rate']) && ($amount <= $settingsSystem['max_rate'])) {
  
    
    
#принимаем из сессии ID-события
    
$idEvent $_SESSION['idEvent'];
    
    
#сразу же удаляем ID-события из сессии
    
unset($_SESSION['idEvent']);
    
    
    
#принимаем из сессии коэффициент
    
$bet $_SESSION['bet'];
    
    
#сразу же удаляем коэффициент из сессии
    
unset($_SESSION['bet']);
    
   
#ID-пользователя
    
$who ID_USER;
    
    
#время сейчас
    
$timeNow time();
    
    
#вычисляем возможный выигрышь пользователя
    
$howPostWin $amount $bet;
    
    
#на кого поставили
    
$outCome $_SESSION['outCome'];
    
#сразу же удаляем значение из сессии
    
unset($_SESSION['outCome']);
    
    
#добавляем в БД
    
$insertBet $db -> query("INSERT INTO betting (idsob, onwhom, who, how, howwin, time) VALUES (?i, ?i, ?i, ?s, ?s, ?i)"$idEvent$outCome$who$amount$howPostWin$timeNow);
    
    
#проведем проверку, записалось или нет
    
if ($insertBet) {

    
$updateBalance $db -> query("UPDATE users SET balance = balance - ?i WHERE id = ?i"$amount$who);
    
        
show('Ставка принята!<br />
        Ваш максимальный выигрыш: '
.$howPostWin.' руб.');
    } else {
        
errors('Ошибка записи в БД');
    }
        
} else {
fatalError("Она могла возникнуть по следующим причинам:<br>- На вашем счету недостаточно средств.<br>- Сумма Вашей ставки менее ".$settingsSystem['min_rate']." руб., либо более ".$settingsSystem['max_rate']." руб.");
}
}
Онлайн: 5
Реклама