Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Dodanie danych do tablic + sprawdzenie
Forum PHP.pl > Forum > Przedszkole
ghastblood
Witam,
wpadłem na genialny pomysł uproszczenia sobie organizacji zawodów strzeleckich, chciał bym aby przy zgłoszeniu zawodnika wyznaczało mu kolejkę oraz stanowisko o której może strzelać

np.:
Określam że strzelnica ma 2 pawilony 25m. i 50m. każdy po 15 stanowisk
w opisie konkurencji jest określone że tak to jest na 25m a ta na 50m
chciał bym żeby system sam ustawiał zawodnikom kolejki tzn. sprawdzał czy zawodnik może nie strzelać już o tej godzinie i czy są wolne miejsca w danej kolejce

jeżeli chodzi o samo zgłoszeni zawodników dodawanie wyników wraz z sortowaniem mam już gotowe zostało mi do zrobienia wyznaczanie kolejek
od czego powinienem zacząć to tworzyć robić funkcję jakieś a potem przy dodawaniu zawodnika żeby od razu rozpisywało stanowiska czy jakiś przycisk w ustawieniach
proszę o pomoc który po kliknięciu rozłoży wszystkim nowym zawodnikom stanowiska ?

pozdrawiam
KS

.
blahy
jezeli masz dana liste zawonikow to mozna zrobic cos takiego:
  1. //utworz liste zawodnikow
  2. for($i=1; $i<=8; $i++) {
  3. $zawodnicy[] = "zawodnik $i";
  4. }
  5.  
  6. //wypisz liste zawodnikow
  7. echo "lista uczestnikow:<br>";
  8. foreach($zawodnicy as $zawodnik) {
  9. echo "$zawodnik<br>";
  10. }
  11.  
  12. $stanowiska = 3; //ile stanowisk w pawilonie
  13. $przerwa = 10; //ile czasu miedzy zawodnikami - 0 dla poczatku zawodow
  14.  
  15. $i = 1; //licznik - ktore stanowisko aktualne
  16. $j = 0; //licznik - ktora iteracja (wyznacza czas)
  17.  
  18. //dla kazdego zawodnika wyznacz stanowisko i czas
  19. foreach($zawodnicy as $zawodnik) {
  20. $czas = $j * $przerwa;
  21. $rozklad[$i][] = array($zawodnik, $czas); //tablica dla kazdego stanowiska lista graczy
  22. if($i++ >= $stanowiska) { //aktualizuj liczniki
  23. $j++;
  24. $i = 1;
  25. }
  26. }
  27.  
  28. //wypisz listy zawodnikow z przyporzadkowaniem do stanowisk
  29. $i = 1; //licznik stanowisk
  30. foreach($rozklad as $stanowisko) { //dla kazego stanowiska
  31. echo "stanowisko ",$i,'<br>';
  32. echo "uczestnik - czas<br>";
  33. foreach($stanowisko as $zawodnik) { //dla kazdego zawodnika przyporzadkowanego do stanowiska
  34. echo $zawodnik[0],' - ',$zawodnik[1],'<br>'; //wypisz imie i czas
  35. }
  36. $i++;
  37. }

zamykasz to w funkcje i podobna rzecz robisz dla drugiego pawilonu. dodatkowo wyznaczasz aktualny czas. ja przyjalem 0 jako poczatek zawodow.

dla 3 stanowisk w pawilonie i listy zawodnikow:
zawodnik 1
zawodnik 2
zawodnik 3
zawodnik 4
zawodnik 5
zawodnik 6
zawodnik 7
zawodnik 8
na wyjsciu dostajesz listy wg stanowisk razem z czasem startu:
stanowisko 1
uczestnik - czas
zawodnik 1 - 0
zawodnik 4 - 10
zawodnik 7 - 20
stanowisko 2
uczestnik - czas
zawodnik 2 - 0
zawodnik 5 - 10
zawodnik 8 - 20
stanowisko 3
uczestnik - czas
zawodnik 3 - 0
zawodnik 6 - 10
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.