Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
PHP

Losowanie drużyn poprzez skrypt

PHP

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
3 odpowiedzi w tym temacie

#1 Ryuu

    Wszechwidzący

  • Użytkownik

Reputacja: 31
Życzliwy

  • Postów:233
  • Steam:steam
  • Lokalizacja:Warszawa
Offline

Napisano 28.11.2011 16:46

Witam znalazłem w internecie taki skrypcik do losowania drużyn .
<?php
$num= array("dr1", "dr2", "dr3", "dr4", "dr5", "dr6", "dr7", "dr8", "dr9", "dr10");

echo "GRUPA1";

echo "<br><br>";
echo "<b>wch0dzidruzyna1:</b>";
echo $num[rand(0,9)];
echo "<br>";
echo "<b>wch0dzidruzyna2:</b>";
echo $num[rand(0,9)];
echo "<br>";
echo "<b>wch0dzidruzyna3:</b>";
echo $num[rand(0,9)];
echo "<br>";
echo "<b>wch0dzidruzyna4:</b>";
echo $num[rand(0,9)];
echo "<br><br>";

?>

Wszystko ładnie pięknie, ale problem jest w tym, że czasem wyskakują takie same numery drużyn. Moje pytanie brzmi jak zrobić, aby nie wyświetlała się kilka razy ta sama drużyna, tzn. jeśli już raz została wypisana to tak jakby znikała ze zmiennej(chyba) $num .
  • +
  • -
  • 0

#2 MarWit

    The Chosen One

  • Przyjaciel

Reputacja: 843
Czempion

  • Postów:1 485
  • GG:
  • Steam:steam
  • Imię:Marcin
  • Lokalizacja:Bystrzyca
Offline

Napisano 28.11.2011 16:52

Mozesz zrobić to chociażby tak:


<?php
$num= array("dr1", "dr2", "dr3", "dr4", "dr5", "dr6", "dr7", "dr8", "dr9", "dr10");

echo "GRUPA1";

$random = array_rand($num, 4)

echo "<br><br>";
echo "<b>wch0dzidruzyna1:</b>";
echo $num[$random[0]];
echo "<br>";
echo "<b>wch0dzidruzyna2:</b>";
echo $num[$random[1]];
echo "<br>";
echo "<b>wch0dzidruzyna3:</b>";
echo $num[$random[2]];
echo "<br>";
echo "<b>wch0dzidruzyna4:</b>";
echo $num[$random[3]];
echo "<br><br>";

?>


http://pl.php.net/ma....array-rand.php
  • +
  • -
  • 1

marwit-0.png


#3 -PainKiller-

    Wszechobecny

  • Zbanowany

Reputacja: 66
Pomocny

  • Postów:498
  • GG:
  • Steam:steam
  • Imię:Kamil
  • Lokalizacja:Kraków
Offline

Napisano 28.11.2011 18:15

Oba rozwiązania sprawdzają się tylko do jednej kolejki rozgrywek, ja mam rozpiskę na wszystkie kolejki bez powtórek meczy i bez powtórek kolejności tych samych drużyn mecz po meczu (w miarę możliwości, nie zawsze jest to możliwe np gdy pula drużyn jest 4). Czyli generator całego terminarza

#4 Ryuu

    Wszechwidzący

  • Autor tematu
  • Użytkownik

Reputacja: 31
Życzliwy

  • Postów:233
  • Steam:steam
  • Lokalizacja:Warszawa
Offline

Napisano 28.11.2011 18:58

Dzięki MarWit, prawie fajnie, ale jak wklejam ten Twój kod to mi wywala błąd w 9linijce.
[b]Parse error[/b]: syntax error, unexpected T_ECHO in [b]/virtual/l/i/www.***.pl/losowanie.php[/b] on line [b]9[/b]

Już naprawiłem. Po [font=monospace]
[/font]$random = array_rand($num, 4)
zapomniałeś dać " ; " . Użyłem również shuffle($num); żeby było mniejsze prawdopodobieństwo kolejności porządkowej . Close. :)

Użytkownik Ryuu edytował ten post 28.11.2011 19:15

  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: PHP

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych