Op phpfreakz.nl had ik al een topic geopend met m'n vraag, maar dit leverde nog weinig op. Ook op GoT zijn betrekkelijk weinig topics hierover. Ik zit met het volgende probleem.
Ik ben dus bezig met het opzetten van een klein toernooi-scriptje. In m'n database staan m'n teams die zich aangemeld hebben voor een bepaald toernooi. Door middel van een loting-script wil ik ze een plek geven in de poules. In de database moet dus een veld aan een gebruiker toegevoegd worden dat z'n plaats in één van de poules moet voorstellen. Bijv:
1 staat voor plaats 1 in poule A
2 staat voor plaats 2 in poule A
3 staat voor plaats 3 in poule A
4 staat voor plaats 4 in poule A
5 staat voor plaats 1 in poule B
6 staat voor plaats 2 in poule B
enz.
Nou kwam ik op php.net een scriptje tegen dat een reeks nummers genereert:
In dit geval worden de nummers 1 t/m 32 willekeurig achter elkaar gezet, leuk voor een soort van loting zeg maar.
Hoe kan ik nou zo'n nummer aan een gebruiker in m'n database koppelen? Het kan natuurlijk zijn dat er meer dan 32 gebruikers zich ingeschreven hebben voor het toernooi. Moet je dan de 32 teams die zich als eerst ingeschreven hebben uit de database halen, het nummer koppelen aan de teams en dan de velden in MySql updaten? (dit kan want de datum & tijd van inschrijving staan genoteerd). Kan iemand mij misschien helpen?
Ik ben dus bezig met het opzetten van een klein toernooi-scriptje. In m'n database staan m'n teams die zich aangemeld hebben voor een bepaald toernooi. Door middel van een loting-script wil ik ze een plek geven in de poules. In de database moet dus een veld aan een gebruiker toegevoegd worden dat z'n plaats in één van de poules moet voorstellen. Bijv:
1 staat voor plaats 1 in poule A
2 staat voor plaats 2 in poule A
3 staat voor plaats 3 in poule A
4 staat voor plaats 4 in poule A
5 staat voor plaats 1 in poule B
6 staat voor plaats 2 in poule B
enz.
Nou kwam ik op php.net een scriptje tegen dat een reeks nummers genereert:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
| <?php // set some globals $s = array(); $n = 32; // the range you require function set_num() { global $s, $n; $add = "yes"; $ran = rand(1, $n); if(count($s) > 0) { foreach($s as $sh) { if($ran == $sh) { $add = "no"; } } } if($add == "yes") { $s[] = $ran; } else { set_num(); } } // call the function as needed while(count($s) < $n) { set_num(); } // just output a list seperated by whitespace foreach($s as $sh) { echo $sh." "; } ?> |
In dit geval worden de nummers 1 t/m 32 willekeurig achter elkaar gezet, leuk voor een soort van loting zeg maar.
Hoe kan ik nou zo'n nummer aan een gebruiker in m'n database koppelen? Het kan natuurlijk zijn dat er meer dan 32 gebruikers zich ingeschreven hebben voor het toernooi. Moet je dan de 32 teams die zich als eerst ingeschreven hebben uit de database halen, het nummer koppelen aan de teams en dan de velden in MySql updaten? (dit kan want de datum & tijd van inschrijving staan genoteerd). Kan iemand mij misschien helpen?
Dat zeg ik!