PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : User in 2 Spalten mischen



auron2008
29.10.2010, 21:13
Hi ^^,

hab das Problem, dass ich für ein Addon, User aus der vms_kontodaten mischen muss. Und zwar so, dass die User in einer anderen tabelle X als User1 und User2 drinne stehen sollen, dabei soll es keine wiederholungen geben.

z.b. in der vms_kontodaten stehen 6 user drinne . 1,2,3,4,5,6 , dann soll in der tabelle mix alles so drinne stehen:


user1 user2 user1 user2
1 5 2 3
4 2 oder 1 6
6 3 5 4

das quasi 2 User immer ein Team bilden (zufällige wahl) .
Hat jemand eine idee wie man dies realisieren könnte ?

mfg auron2008

SebbyPHM
29.10.2010, 21:47
easy:


db_query ('TRUNCATE TABLE teams_zufall'); // tabelle vorsichthalber leeren

$cache1st = null; // cache einbauen

// alle user zufällig aus db holen
$query = db_query ('SELECT uid FROM vms_kontodaten ORDER BY RAND()');
while ($row = mysql_fetch_assoc ($query)) {
// wenn kein user im cache, dann cachen und nächster durchlauf
if ($cache1st === null) $cache1st = $row;
else {
// wenn bereits user im cache, den gecacheten user und aktuellen datensatz nehmen und eintragen
db_query ('INSERT INTO teams_zufall (user1, user2) VALUES ('.$cache1st['uid'].', '.$row['uid'].')');
$cache1st = null; // cache reset
}
}

müsste klappen, aber ist ungetestet und auf die schnelle

auron2008
30.10.2010, 10:27
Hi ^^ vielen Dank, werd das heute abend mal versuchen. :thumb: