• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Ultrastats Navbox

Puko

Neues Mitglied
Hallo,
bin leider noch Anfänger was php und sql angeht und wollte eine Navbox für unsere HP machen die Top10 Spieler mit den meisten Kills raus spuckt (ultrastats, falls das jemanden was sagt)

Wie es aussieht hat so was nur einer mal gemacht und der gibt leider auch nicht viel Infos raus und hab nur das hier bekommen und nützt mir nicht viel da ich ein anderes CMS als er benütze.
Dacher wollte ich es umschreiben so das es bei mir (auch läuft)...

Hier mal der Code von ihm...
PHP:
<style type="text/css">
<!--
.style1 {color: #FFFFFF}
.style2 {color: #FFFF00}
.style3 {color: #0000FF}
-->
</style>
<?php 

if (eregi("block-ultrastats.php", $_SERVER['PHP_SELF'])) { 
    Header("Location: index.php"); 
    die(); 
} 
require_once("mainfile.php");

        
        global $prefix, $db, $dbi, $sitename;
$sql = "SELECT SUM(Kills) AS Kills, GUID FROM stats_players GROUP BY GUID ORDER BY Kills DESC LIMIT 5";
$content .= "<br><center><b><Big><span class=\"style2\">Kills & Deaths</span></Big></b></center>";
$content .= "<br><center><B><span class=\"style1\">Top 5 Kills</span></B></center>";
        $content .= "<br>";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result)) {
    $guid = $row[GUID];
    $kills = $row[Kills];
    $sql2 = sql_query("SELECT Alias FROM stats_aliases WHERE PLAYERID ='$guid' ORDER BY Alias DESC LIMIT 0,1", $dbi);
    $result2 = sql_fetch_array($sql2, $dbi);
        $Alias = $result2[Alias];
        $Alias = str_replace('^0','<font color = black>',$Alias);
        $Alias = str_replace('^1','<font color = red>',$Alias);
        $Alias = str_replace('^2','<font color = blue>',$Alias);
        $Alias = str_replace('^3','<font color = yellow>',$Alias);
         $Alias = str_replace('^4','<font color = blue>',$Alias);
        $Alias = str_replace('^5','<font color = cyan>',$Alias);
        $Alias = str_replace('^6','<font color = magenta>',$Alias);
        $Alias = str_replace('^7','<font color = white>',$Alias);
        $Alias = str_replace('^8','<font color = white>',$Alias);
        $Alias = str_replace('^9','<font color = white>',$Alias);


        $content .= "<center><table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"1\">
                                          <tr>
                                            <td><div align=\"left\"><b><a href='ultrastats\players-detail.php?id=$guid'>$Alias </a></b></div></td>
                                                <td width=\"10\"><div align=\"center\">$kills</div></td>
                                          </tr>
                                  </table></center>";

    } 

        $content .= "<br>";
Bei mir ist so der Fall, dass mein CMS auf einem Webserver ist und die DB von den Ultrastats auf einem anderen...
Dacher nicht wundern wegen sql_connect befehl...

Hier mal mein Versuch...
PHP:
<?php 
$verbindung = @mysql_connect("localhost","xxx","xxx");
        if (!$verbindung) {
                echo "Keine Verbindung möglich!\n";
                exit;
        }


$prefix = "stats_";
$db = "usr_xxx_x";

$sql = "SELECT SUM(Kills) AS Kills, GUID FROM stats_players GROUP BY GUID ORDER BY Kills DESC LIMIT 5";
$content .= "<br><center><b>Kills & Deaths</b></center>";
$content .= "<br><center><B>Top 5 Kills</B></center>";
        $content .= "<br>";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result)) {
    $guid = $row[GUID];
    $kills = $row[Kills];
    $sql2 = sql_query("SELECT Alias FROM stats_aliases WHERE PLAYERID ='$guid' ORDER BY Alias DESC LIMIT 0,1", $dbi);
    $result2 = sql_fetch_array($sql2, $dbi);
        $Alias = $result2[Alias];
        $Alias = str_replace('^0','<font color = black>',$Alias);
        $Alias = str_replace('^1','<font color = red>',$Alias);
        $Alias = str_replace('^2','<font color = blue>',$Alias);
        $Alias = str_replace('^3','<font color = yellow>',$Alias);
        $Alias = str_replace('^4','<font color = blue>',$Alias);
        $Alias = str_replace('^5','<font color = cyan>',$Alias);
        $Alias = str_replace('^6','<font color = magenta>',$Alias);
        $Alias = str_replace('^7','<font color = white>',$Alias);
        $Alias = str_replace('^8','<font color = white>',$Alias);
        $Alias = str_replace('^9','<font color = white>',$Alias);


        $content .= "<center><table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"1\">
                                          <tr>
                                            <td><div align=\"left\"><b><a href='ultrastats\players-detail.php?id=$guid'>$Alias </a></b></div></td>
                                                <td width=\"10\"><div align=\"center\">$kills</div></td>
                                          </tr>
                                  </table></center>";

    } 

        $content .= "<br>";

        mysql_close($verbindung);
?>
So, hab leider dann den Fehler bei der Zeile...
PHP:
$result = $db->sql_query($sql);
Ich weiss und das ist das Problem, weiss jetzt nicht was er mit $dbi gemeint hat und wofür das steht, aber so weit komme ich nicht mal...
Kan mir einer sagen wieso er bei $resultat Fehler hat, hab ich da was übersehen oder kann man das nicht so übernehmen? :neutral:
 
Werbung:
Ich den Code nur grob durchgelesen, aber mir ist aufgefallen, dass du nirgendwo eine Verbindung mit der DB hergestellt hast!
PHP:
mysql_select_db('Datenbank')
 
Zurück
Oben