# Which variables goes together?

2 replies to this topic

### #1 yeltzin

yeltzin
• New Members
• Newbie
• 2 posts

Posted 06 April 2013 - 09:16 PM

Hi!

In an onlinegame there are teams that has played matches against each other, plenty of teams and they are divided in 16 groups, and i want to know what team's are in the same groups..

All the data is stored in mysql and it looks something like this :

Games played :

Round 1, Team A vs Team B

Round 1, Team C vs Team D

Round 1, Team E vs Team F

Round 1, Team G vs Team H

... and so on

.

Round 2, Team A vs Team E

Round 2, Team C vs Team G

Round 2, Team F vs Team B

Round 2, Team D vs Team H

... and so on

..

Round 3, ..... cont...

..

Now i see that team A,B,E, and F plays in the same group, and i want some way to make the script find these combinations for me..

Whats the best way to find out these groupings?

### #2 yeltzin

yeltzin
• New Members
• Newbie
• 2 posts

Posted 06 April 2013 - 10:25 PM

No need.. found a way..

--------------------------

\$k = 1;

if (\$group[\$home] == "" && \$group[\$away] == "")
{
\$group[\$home] = \$k;
\$group[\$away] = \$k;
\$k = \$k + 1;
}

if (\$group[\$home] != "" && \$group[\$away] != "")
{
if (\$group[\$home] > \$group[\$away]) \$group[\$home] = \$group[\$away];
if (\$group[\$home] < \$group[\$away]) \$group[\$away] = \$group[\$home];
}

if (\$group[\$home] != "" && \$group[\$away] == "")
{
\$group[\$away] = \$group[\$home];
}

if (\$group[\$home] == "" && \$group[\$away] != "")
{
\$group[\$home] = \$group[\$away];
}

### #3 Barand

Barand
• Moderators
• Sen . ( ile || sei )
• 17,836 posts

Posted 07 April 2013 - 02:31 PM

my 0.02 worth

```\$sql = "SELECT teama,teamb FROM matches
ORDER BY teama, teamb";
\$res = \$mysqli->query(\$sql);
\$preva = '';
\$groups = array();
while (list(\$a, \$b) = \$res->fetch_row()) {
if (\$preva != \$a) {
if (\$preva) {
\$inGroup = false;
foreach (\$groups as \$teams) {
if (in_array(\$a, \$teams)) {
\$inGroup = true;
break;
}
}
if (!\$inGroup) {
\$groups[\$a] = array();
}
}
else \$groups[\$a] = array();
\$preva = \$a;
}
if (isset(\$groups[\$a]))
\$groups[\$a][] = \$b;
}
echo '<pre>',print_r(\$groups, true),'</pre>';

```

If you are still using mysql_ functions, STOP! Use mysqli_ or PDO. The longer you leave it the more you will have to rewrite.