2016-05-16 3 views
0

Я создаю игру с футбольными играми в PHP/MSQL, и сейчас я пытаюсь вычислить систему подсчета с помощью if-утверждений.Футбол ставки - расчет очков

ставки сохраняются в команде, как это:

Team 1: Bayern Munich 
Team 2: Borussia Dortmund 

Bet_Team1: 4 
Bet_Team2: 1 

Фактические результаты:
Бавария Мюнхен 5: 2 Боруссия

сохранены как это:

Result_Team1: 5 
Result_Team2: 2 

Я пробовал это с помощью операторов if:

// Completely right draw:  
if($Bet_Team1 === $Result_Team1 && $Bet_Team2 == $Result_Team2){ 
    $points = $points+6; } 

Это хорошо работает, но я не знаю, как рассчитать очки, если пользователь набрал правильную команду победителей, как в примере выше, с Баварией Мюнхеном и Боруссией Дортмундом.

+0

Они ставку 4-1, но результат был 5-2 Таким образом, они не являются '' === или даже '' == – RiggsFolly

+0

эй, если-заявление это просто пример вычисления ничьей. – blzzrd

+0

Не могли бы вы объяснить, что не работает? – fislerdata

ответ

1

Как об этом, чтобы вы начали

// Completely right draw:  
if($Bet_Team1 === $Result_Team1 && $Bet_Team2 == $Result_Team2){ 
    $points = $points+6; 
} 
// they guessed the winning team but wrong score 
else if (($Result_Team1 > $Result_Team2 && $Bet_Team1 > $Bet_Team2) || 
      ($Result_Team2 > $Result_Team1 && $Bet_Team2 > $Bet_Team1) 
     ) 
{ 
    $points += ? // how many points do you allocate to this situation 
} 
+0

Отлично работает! Спасибо! – blzzrd

+1

Хорошей реализацией этого в php7 будет использование [оператора космического корабля] (http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol-mean-in-php/31298778#31298778) , Что-то вроде: 'if (($ bet_team1 <=> $ bet_team2) == ($ result_team1 <=> $ result_team2)) {// добавить точки}' Это также будет учитывать неправильные оценки при рисовании. – ImClarky

Смежные вопросы