Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Bilans meczy dwoch druzyn - problem
Forum PHP.pl > Forum > PHP
stal-sw
Witam.
Mam w bazie danych tabele z wynikami wszystkich meczy jakie rozegraly rozne druzyny.
I teraz robie do bazy danych zapytanie w ktorym pobieram wszytkie mecze 2 wybranych druzyn.

Zapytanie to zwraca mi taka tablice:
TAblica nazywa sie BILANS.
Kod
Array (
[0] => Array ( [id] => 2694 [gospodarz] => 22 [przeciwnik] => 1 [gol1] => 2 [gol2] => 2 [jaki_wynik] => 0 )
[1] => Array ( [id] => 2055 [gospodarz] => 1 [przeciwnik] => 22 [gol1] => 0 [gol2] => 0 [jaki_wynik] => 0 )
[2] => Array ( [id] => 56 [gospodarz] => 1 [przeciwnik] => 22 [gol1] => 0 [gol2] => 1 [jaki_wynik] => -1 )
[3] => Array ( [id] => 39 [gospodarz] => 22 [przeciwnik] => 1 [gol1] => 2 [gol2] => 1 [jaki_wynik] => 1 )


Powyzsza tablicy dla druzyny gospodarza wskazuje na bilans: 2 zw, 2 remisy, 0 porazek
I teraz na podstawie tej tablicy chcialbym obliczyc ile zwyciestw, ile remisow i ile porazek ma dana druzyna.

Tablica moja ma nastepnujace indeksy:
[id] - id meczu
[gospodarz] - druzyna ktroa jest gospodarzem meczu czyli jest wpisana jako pierwsza
[gospodarz] - druzyna ktora jest gosciem
[gol1] - bramki zdobyte przez gospodarza
[gol1] - bramki zdobyte przez goscia
[jaki_wynik] - tuaj na podstawie zapytania dostajemy obliczony rezultat meczu - 1 zwyciestwo gospodarza, o - remis, -1 , przegrana gospodarza.

I teraz tak: jak na podstawie tej tablicy obliczyc bilans meczy dal druzyny - tylko wlasnie tutaj jest jedno ale......... dana druzyny moze byc zarawno gosciem jak i gospodarzem - jakby sie akurata tego nei bralo pod uwage to BILANS wyliczylby mi moj skrypt czyli:
  1. <?
  2. if($bilans && is_array($bilans)) {
  3. foreach ($bilans as $bil) {
  4. if($bil['roznica_dom']>&& $bil['gospodarz']==$g) 
  5. $zwyciestwa++; 
  6. elseif($bil['roznica_dom']==0) 
  7. $remisy++; 
  8. else 
  9. $porazki++; 
  10. }
  11. }?>


Jednak wlasnie problemem jest to ze gospodarzem nei zawsze jest ta sama druzyna.

Z gory dzieki za pomoc w rozwiazaniu tego problemu.
bartek00
  1. <?php
  2. // druzyna, ktorej robisz bilans
  3. $team
  4.  
  5. $bilans = array( 'przegrane' => 0, 'remisy' => 0, 'wygrane' => 0);
  6.  
  7. foreach($wyniki as $wynik)
  8. {
  9.  
  10. if($wynik['gospodarz'] == $team)
  11. {
  12. $bilans[$wynik['jaki_wynik'] + 1]++;
  13. }  
  14.  
  15.  
  16. if($wynik['przeciwnik'] == $team)
  17. {
  18. $bilans[abs($wynik['jaki_wynik'] - 1)]++;
  19. }  
  20.  
  21.  
  22. }
  23. ?>


Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.