[PHP] jeder gegen jeden
phillip
- php
moin!
ich habe 2 arrays aus 2 mal den selber sql auslesen mit also jeweils den gleichen inhalten. mit 2 schleifen lasse ich "jeder gegen jeden spielen"
while ($row1 = mysql_fetch_array($outkram_aa))
{
while ($row2 = mysql_fetch_array($outkram_bb))
{
if ($row1["userid"] !== $row2["userid"])
{
echo "Match: ".$row1["userid"]." : ".$row2["userid"]."<br>";
}
}
@mysql_data_seek($outkram_bb, 0);
}
@mysql_data_seek($outkram_aa, 0);
das funktioniert soweit, nur spielt dann quasi jeder 2 mal gegen jeden. zb:
1:2 und 2:1
hat jemand eine idee wie ich das ändern kann?
vielen dank,
phillip
Guten Abend!
ich habe 2 arrays aus 2 mal den selber sql auslesen mit also jeweils den gleichen inhalten.
"aus 2 mal den selber sql auslesen"? Mich beschleicht manchmal der Verdacht, die berühmten chinesischen Bedienungsanleitungen werden gar nicht von chinesischen Automaten gemacht...
mit 2 schleifen lasse ich "jeder gegen jeden spielen"
das funktioniert soweit, nur spielt dann quasi jeder 2 mal gegen jeden. zb:
1:2 und 2:1
Dein Quadratansatz funktioniert nicht, weil in so einem Quadrat bei gleichen Achsen jeder Achsenwert logischerweise doppelt vorkommt, einmal auf der x-, einmal auf der y-Achse:
1 2 3
1 11 21 31
2 12 22 32
3 13 23 33
Ergibt:
12 13 23
21 31 32
Du musst statt eines Quadrats eine Linie nehmen:
1 2 3 4
Lasse erst 1 gegen alle Folgenden spielen, dann 2 gegen alle folgenden, und so weiter, bis Du beim letzten Feld angekommen bist:
12 13 14 23 24 34
Programm:
for (i = 0; i < sizeof(a) - 1; i++) {
for (j = i; j < sizeof(a) - 1; j++) {
echo a[j] . " : " . a[j + 1];
}
}
Nicht ausprobiert, die Richtung sollte aber stimmen.