Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: skrypt wyswietlający terminarz
Forum PHP.pl > Forum > Przedszkole
Janek111
Witam. Musze zrobic skrypt wyswietlajacy terminarz meczow. Nie moge sobie poradzić, zeby odpowiednio pogrupowac te mecze.
Zrobilem najpierw 2 identyczne tablice asocjacyjne gdzie kluczem jest nazwa druzyny a wartoscia jej numer(zaczynajac od jedynki).
Nastepnie mam taką petle:
  1. <?php
  2.  
  3. foreach ($tabela1 as $klucz1 => $wartosc1)
  4. {
  5. foreach ($tabela2 as $klucz2 => $wartosc2)
  6. {
  7. if ($wartosc1 == $wartosc2 || $wartosc1>$wartosc2)
  8. continue;
  9. $mecze[]= $klucz1.' - '.$klucz2;
  10. }
  11. }
  12.  
  13. ?>

Mam juz wszystkie mozliwe mecze, problem w tym ze trzeba to jeszcze odpowiednio pogrupowac aby w kazdej kolejce dana druzyna pojawila sie tylko raz. Nie wiem jak to zrobic, moze Wy coś poradzicie smile.gif
ferr
nie lepiej stworzyc tabele gdzie bedziesz mial ID_MECZ, ID_TEAM1, ID_TEAM2, nr_kolejki chocby? snitch.gif
Janek111
Mam taką tabele w bazie danych smile.gif Tylko jak teraz tam dobrze dane zapisac?
Nie wiem czy jest jakiś wzór na to żeby to odpowiednio pogrupować :/
ferr
Przy dodawaniu spotkan za pomoca formularza wybierasz nr kolejki chocby z <select> i nr_sezonu. Dodajesz wszystko do tej wlasnie tabeli.

Aby wyciagnac dane do terminarza:

  1. $sql = "SELECT *
  2. FROM mecze
  3. WHERE ID_SEZON = 1
  4. ORDER BY nr_kolejki ;";


?

  1. <?php
  2. while ($row = mysql_fetch_array($result)) {
  3.  
  4.  $kolejka = $row["kolejka"];
  5.  if ($k != $row["kolejka"]){
  6.  
  7.  echo "<tr><td><b><center>Kolejka ".$row["kolejka"].".</center></b></td></tr>";
  8.  }
  9.  
  10.  //kod odpowiedzialny za wyswietelnie zespolow xxx vs xxx
  11.  $k = $row["kolejka"];
  12. }
  13.  
  14. ?>


Tak to mniej wiecej mozna rozwiazac.. Kod pisany 2 lata temu, wiec z gory przepraszam za niescislosci, ale idee chyba zachowalem smile.gif
Janek111
Thx, chyba właśnie tak zrobie. Ogólnie to na początku chodziło mi o to, żeby do formularza wpisać przykładowo 20 drużyn, i żeby terminarz w bazie danych sam powstał. W sposobie, który opisałeś sam bede musiał wpisywać mecze i wybierać nr kolejki, no ale co zrobić biggrin.gif
Radarek
Cytat(Janek111 @ 2006-02-04 16:40:14)
Ogólnie to na początku chodziło mi o to, żeby do formularza wpisać przykładowo 20 drużyn, i żeby terminarz w bazie danych sam powstał.

Kiedys probowalem cos takiego zrobic, ze dla danych N druzyn chcialem wygenerowac terminarz. Jest to naprawde bardzo trudne, mnie nie udalo sie dla dowolnego N znalezc takiego algorytmu.
Janek111
Tak żeby nie zakładać nowego tematu to tutaj napisze jeszcze jeden problem.
Mam juz zrobiony ten terminarz, a także tabele do niego. Napisalem funkcje sortującą tabele i wszystko działa. Teraz tylko mam problem żeby przy każdym zespole odpowiednio wyświetlić pozycję na której on się znajduje. Jezeli kazdy jest na innej pozycji to wszystko jest ok, ale co jak 2 albo wiecej druzyn jest na tym samym miejscu? Numerki przy tych klubach powinny byc takie same. Nie wiem jak to zrobić, mecze sie z tym pare dni dry.gif Moze jak ktos juz cos takiego robil to mi, z gory dzieki smile.gif
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.