Ok. Also :
In DB1 Stehen in einem Table die UserID und der Name und Level dazu.
In einem anderen Table stehen dann die verschiedenen Sachen die Punkte bringen.
In DB2 stehen die Punkte für die Sachen aus der anderen DB.
Lässt sich nicht anders machen, ist fest vorgegeben.
Nun lass ich alle Sachen die Punkte bringen durch die Wertung aus der 2. DB laufen, damit daraus eine Gesamtpunktzahl wird.
aber code spricht mehr als tausend worte :
Code: Alles auswählen
$arcpoints = array();
$query = mysql_query("SELECT id, rewpoints FROM `game`.`achievement` ORDER BY id") or die (mysql_error());
while ($row_list = mysql_fetch_object($query))
{
$arcpoints[$row_list->id] = $row_list->rewpoints;
}
$query = mysql_query("SELECT guid, name, level FROM `user`.`players` ORDER BY guid ASC") or die (mysql_error());
while ($row_list = mysql_fetch_object($query))
{
$userid[$row_list->guid] = $row_list->name.' ('.$row_list->level.')';
$useridpts[$row_list->guid] = 0;
}
$query = mysql_query("SELECT guid, achievement FROM `user`.`achievement`") or die (mysql_error());
while ($row_list = mysql_fetch_object($query))
{
$useridpts[$row_list->guid] = $useridpts[$row_list->guid] + $arcpoints[$row_list->achievement];
}
function cmp($a, $b) {
if ($a == $b) {
return 0;
}
return ($a > $b) ? -1 : 1;
}
uasort($useridpts, 'cmp');
foreach($useridpts AS $k => $v)
{
$count++;
echo '<tr>';
echo '<td align="center">'.$count.'.</td>';
echo '<td align="center">'.$userid[$k].'</td>';
echo '<td align="center">'.$v.'</td>';
echo '</tr>';
if ($count==10)
{
break;
}
}
Natürlich vorher dbs auf usw... und tabellen richtig auf und zumachen usw... ist ja jetzt nur ein auszug.
Alles irgendwie aus dem PHP Tutorial
http://tut.php-quake.net/de/index.html
und ein bisschen Logik zusammengedengelt... da ich ja eigentlich kein plan von php hab
