ilch Forum » Ilch Clan 1.1 » Module und Modifikationen » BF2 Tracker auslagern

Geschlossen
  1. #1
    User Pic
    wizzmann Mitglied
    Registriert seit
    06.03.2008
    Beiträge
    27
    Beitragswertungen
    0 Beitragspunkte
    Hätte mal ne Frage, und zwar:
    Kann mann das BF2 Tracker Modul auf nen fremden webspace irgendwie auslagern und auf die eigene hp einbinden? das ganze hat den hintergrund, dass funpic keine curl funktion unterstützt. kilu zb hat diese funktion und dort geht es auch wenn ich ilch komplett dort aufspiele, was ich aber nich unbedingt möchte, da ich früher schonmal bei kilu war und dort serverausfälle und überlastungen öfters vorkamen, bei funpic hab ichs bisher noch nicht erlebt.
    mache ich aber nur rein das modul auf den kilu webspace kommt immer die fehlermeldung "no direct access" wenn ich "BF2Tracker.php" aufrufe, leider habe ich nicht viel ahnung von der ganzen materie und weiss damit nix anzufangen. welche dateien muss ich denn mindestens auf dem kilu webspace haben damit der bf2 tracker läuft(oder was muss ich da umschreiben an dem modul) und wie binde ich das ganze dann so in meine hp ein, dass es einfach aufrufbar ist wie ein normaler menüpunkt?
    hoffe das is irgendwie möglich, da ich das mudul gerne nutzen möchte.
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    wizzmann Mitglied
    Registriert seit
    06.03.2008
    Beiträge
    27
    Beitragswertungen
    0 Beitragspunkte
    is es überhaupt nich möglich, oder einfach nur zu viel arbeit?
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    wizzmann Mitglied
    Registriert seit
    06.03.2008
    Beiträge
    27
    Beitragswertungen
    0 Beitragspunkte
    hab nun mal beim ersteller des moduls selbst nachgefragt,aber auch keine antwort bekommen. keiner weiss rat, evtl. is das viel zu kompiliziert? oder?
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    CeeJay Hall Of Fame
    Registriert seit
    23.03.2007
    Beiträge
    2.425
    Beitragswertungen
    18 Beitragspunkte
    Hmm...

    anfangen würde ich mit den pfaden - versuch doch einfach mal, den absoluten pfad in den .php´s und .htm´s zu "ergänzen" glücklich

    Wenn also z.B. "/include/boxes/test.php" steht, mach daraus "http://www.mein-kilu-space.de/test.php" - das könnte klappen, sofern keine Datenbankabfragen im Spiel sind.

    Am besten, du testest das Ganze vorher mit einer Testsite von dir, so ersparst du dir nachher unnötige Arbeit.

    Wenn du willst, kannst mich mal im ICQ anschreiben, mir die Dateien schicken - vielleicht kann ich dir da bisschen weiterhelfen glücklich
    Nichts ist so sicher, wie die Änderung.
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    wizzmann Mitglied
    Registriert seit
    06.03.2008
    Beiträge
    27
    Beitragswertungen
    0 Beitragspunkte
    asoooo, okey, siehste darauf wär ich nichmal gekommen. bin anfänger auf dem gebiet... ich versuch das mal und wenn ich damit nix erreiche meld ich mich mal bei dir, danke frech





    edit: es is zum ***zen, jetzt hab ichs hinbekommen das es alleine läuft auf kilu. wenn ichs jetzt versuche auf funpic einzufügen kommt:
    "Warning: include() [function.include]: URL file-access is disabled in the server configuration"
    das is ja mal echt abartig... muss ich wohl doch zu kilu wechseln...

    edit2: oköööö hab alles hinbekommen, habs jetzt mit nem frame gelöst.
    Jetzt läuft quasi das script auf meiner page so als würde es bei mir auffem webspace liegen, tuts aber nich --> merkt man aber nich. also wer probleme mit dem Curl befehl hat ganz einfach auf kilu auslagern, funktioniert bei mir prima lachen


    Zuletzt modifiziert von wizzmann am 12.03.2008 - 14:02:32
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    T0P0LIN0 Mitglied
    Registriert seit
    24.07.2006
    Beiträge
    139
    Beitragswertungen
    0 Beitragspunkte
    Das ganze ist recht einfach lege in die include/contents/ eine neue .php z.B. bf2tracker.php auf funpic an, dort diesen inhalt =

    <?php 
    
    # Copyright by T0P0LIN0
    
    defined ('main') or die ( 'no direct access' );
    
    $title = $allgAr['title'].' :: BF2 Tracker';
    $hmenu = '<a href="?bf2tracker">BF2 Tracker</a>';
    $design = new design ( $title , $hmenu );
    $design->header();
    
    echo '
    <iframe name="BF2 Tracker" width="100%" height="700" scrolling="auto" border="0" frameborder="0" src="HIER DENN LINK ZU DEINEN MODUL">
    This browser does not support inline frames.
    </iframe>';
    
    $design->footer();
    ?>


    bei "HIER DENN LINK ZU DEINEN MODUL"
    z.b www.deineseite.de/ordner/bf2tracker.php
    dann das Modul etwas ändern und es auf deiner anderen Seite hochladen.

    <style type="text/css">
    <!--/
    .border
    {
       background-color: #185685;
    }
    .Cmite
    {
      background-color: #B4C6D8;
    }
    .Cnorm
    {
      background-color: #e5e5e5;
    }
    /-->
    </style>
    <?php 
    
    # Copyright by T0P0LIN0
    
    $clanid  =  "2731"; //Clan ID from Battlefield 2 Tracker
    
    function startTag($parser, $name, $attrs) {
     global $stack;
    
     $tag=array("name"=>$name,"attrs"=>$attrs);
     array_push($stack,$tag);
    }
    
    function cdata($parser, $cdata) {
     global $stack;
    
     $stack[count($stack)-1]['cdata'] .= $cdata;
    }
    
    function endTag($parser, $name) {
     global $stack;
    
     $stack[count($stack)-2]['children'][] = $stack[count($stack)-1];
     array_pop($stack);
    }
    
    function aSortBySecondIndex($multiArray, $secondIndex, $dir) {
       while (list($firstIndex, ) = each($multiArray))
           $indexMap[$firstIndex] = $multiArray[$firstIndex][$secondIndex];
       if ($dir==0)
         asort($indexMap);
       else
         arsort($indexMap);
       while (list($firstIndex, ) = each($indexMap))
           if (is_numeric($firstIndex))
               $sortedArray[] = $multiArray[$firstIndex];
           else $sortedArray[$firstIndex] = $multiArray[$firstIndex];
       return $sortedArray;
    }
    
    $stack = array();
    $claninfo = array();
    $clanstats = array();
    $playerstats = array();
    
    $xml_parser = xml_parser_create();
    xml_set_element_handler($xml_parser, "startTag", "endTag");
    xml_set_character_data_handler($xml_parser, "cdata");
    
    $ch = curl_init();
    $timeout = 5; // set to zero for no timeout
    curl_setopt ($ch, CURLOPT_URL, 'http://bf2tracker.com/livefeed/xml_clanprofile.php?clanid='.$clanid.'');
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $xmllink = curl_exec($ch);
    curl_close($ch);
    
    $data = xml_parse($xml_parser,$xmllink);
    
    if(!$data) die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser)));
    
    xml_parser_free($xml_parser);
    
    // Get Data
    
     // Get Clan Profile Data
    
    
     for($i = 0; $i < sizeof($stack[0][children][0][children]); $i++) {
      $valname=$stack[0][children][0][children][$i][name];
      $claninfo[$valname]=$stack[0][children][0][children][$i][cdata];
     }
     for($i = 0; $i < sizeof($stack[0][children][1][children]); $i++) {
      $valname=$stack[0][children][1][children][$i][name];
      $clanstats[$valname]=$stack[0][children][1][children][$i][cdata];
     }
    
    $clan_count = $claninfo['CLANCOUNTRY'];
    $clan_matches =  $clanstats['MATCHES'];
    $clan_wins =  $clanstats['WINS'];
    $clan_loss =  $clanstats['LOSS'];
    $clan_score =  $clanstats['SCORE'];
    $clan_kills =  $clanstats['KILLS'];
    $clan_deaths =  $clanstats['DEATHS'];
    $clan_kdr =  $clanstats['KDRATIO'];
    
    
    $clan_kdr = ($clan_kdr < 1) ? '<font color="#FF0000">'.$clan_kdr.'</font>' : '<font color="#00FF00">'.$clan_kdr.'</font>';
    $clan_kdr = ($clan_kdr <= 2) ? '<font color="#0000FF">'.$clan_kdr.'</font>' : $clan_kdr;
    
    echo '<table width="100%" cellpadding="0" cellspacing="0">
     <tr>
      <td><b>'.$title.'</b></td>
     </tr>
    </table>';
     
    if ($clan_count == ""){
        echo '<br><br><table width="100%" cellpadding="0" cellspacing="0">
                <tr>
                  <td align="center">keine Daten oder offline</td>
                </tr>
              </table>';
    }else {
     
     echo '<table width="100%" cellpadding="0" cellspacing="0">
     <tr>
      <td height="20"><br></td>
     </tr>
    </table>'; 
     
            echo '<table width="200" cellpadding="2" cellspacing="1" border="0" class="border">';
            echo '<tr class="Chead"><td colspan="2"><b>Clanstats:</b></td></tr>';
            echo '<tr><td class="Cmite">Clancountry:</td>
                      <td class="Cnorm" align="center"><img src="include/images/tracker/flags/'.$clan_count.'.jpg" width="16" height="12" border="0"></td></tr>';
            echo '<tr><td class="Cmite">Durchschnitts Matches:</td>
                      <td class="Cnorm" align="right">'.$clan_matches.'</td></tr>';
            echo '<tr><td class="Cmite">Durchschnitts Wins:</td>
                      <td class="Cnorm" align="right">'.$clan_wins.'</td></tr>';
            echo '<tr><td class="Cmite">Durchschnitts Loss:</td>
                      <td class="Cnorm" align="right">'.$clan_loss.'</td></tr>';
            echo '<tr><td class="Cmite">Durchschnitts Score:</td>
                      <td class="Cnorm" align="right">'.$clan_score.'</td></tr>';
            echo '<tr><td class="Cmite">Durchschnitts Death:</td>
                      <td class="Cnorm" align="right">'.$clan_deaths.'</td></tr>';
            echo '<tr><td class="Cmite">Durchschnitts Kills:</td>
                      <td class="Cnorm" align="right">'.$clan_kills.'</td></tr>';
            echo '<tr><td class="Cmite">Durchschnitts K/D:</td>
                      <td class="Cnorm" align="right">'.$clan_kdr.'</td></tr>';
    
            echo '</table>';
    
    
     // Get Player Data
     for($i = 0; $i < sizeof($stack[0][children][2][children]); $i++) {
      for($x = 0; $x < sizeof($stack[0][children][2][children][$i][children]); $x++) {
       $valname=$stack[0][children][2][children][$i][children][$x][name];
       $value=$stack[0][children][2][children][$i][children][$x][cdata];
       if($valname=="PLAYERID") $pid=$value;
       $playerstats[$pid][$valname]=$value;
      }
     }
    
    echo '<table width="100%" cellpadding="0" cellspacing="0">
     <tr>
      <td height="20"><br></td>
     </tr>
    </table>';     
           
            echo '<table width="100%" cellpadding="2" cellspacing="1" class="border">';
            echo '<tr class="Chead"><td colspan="11"><b>Playerstats:</b></td></tr>';
            echo '<tr class="Cmite">';
            echo '<td align="center" width="16"><b>RA</b></td>';
            echo '<td align="center" width="16"><b>CO</b></td>';
            echo '<td align="center"><b>Player</b></td>';
            echo '<td align="center"><b>Match</b></td>';
            echo '<td align="center"><b>Wins</b></td>';
            echo '<td align="center"><b>Loss</b></td>';
            echo '<td align="center"><b>Score</b></td>';
            echo '<td align="center"><b>Kills</b></td>';
            echo '<td align="center"><b>Deaths</b></td>';
            echo '<td align="center"><b>K/D</b></td>';
            echo '<td align="center"><b>Status</b></td></tr>';
    
    switch ($sort) {
    case 1:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERSTATUS', $dir);
       break;
    case 2:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERNAME', $dir);
       break;
    case 3:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERRANK', $dir);
       break;
    case 4:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERMATCHES', $dir);
       break;
    case 5:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERWINS', $dir);
       break;
    case 6:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERLOSS', $dir);
       break;
    case 7:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERGLOBALSCORE', $dir);
       break;
    case 8:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERKILLS', $dir);
       break;
    default:
      $playerstats_sorted=aSortBySecondIndex($playerstats, 'PLAYERRANK', 1);
    }
    
     foreach($playerstats_sorted as $key => $value) {
     $playerrank  = $playerstats_sorted[$key][PLAYERRANK];
     $playerflag  = $playerstats_sorted[$key][PLAYERCOUNTRY];
     $playername=$playerstats_sorted[$key][PLAYERNAME];
     $playerurl    = $playerstats_sorted[$key][PLAYERSTATSURL];
     $playermatches    = $playerstats_sorted[$key][PLAYERMATCHES];
     $playerwins   = $playerstats_sorted[$key][PLAYERWINS];
     $playerloss    = $playerstats_sorted[$key][PLAYERLOSS];
     $playerscore    = $playerstats_sorted[$key][PLAYERGLOBALSCORE];
     $playerkills    = $playerstats_sorted[$key][PLAYERKILLS];
     $playerdeaths = $playerstats_sorted[$key][PLAYERDEATHS];
     $playerkdr = @round($playerstats_sorted[$key][PLAYERKILLS]/$playerstats_sorted[$key][PLAYERDEATHS], 2);
    
     
     $status = ($playerstats_sorted[$key]['PLAYERSTATUS']=="1") ? '<img src="include/images/tracker/online.gif" alt="online" />' : '<img src="include/images/tracker/offline.gif" alt="offline" />';
    
    $playerkdr = ($playerkdr < 1) ? '<font color="#FF0000">'.$playerkdr.'</font>' : '<font color="#00FF00">'.$playerkdr.'</font>';
    $playerkdr = ($playerkdr <= 2) ? '<font color="#0000FF">'.$playerkdr.'</font>' : $playerkdr;
    
            echo '<tr class="Cnorm">';
            echo '<td valign="middle" width="16"><img src="include/images/tracker/ranks/'.$playerrank.'.gif" border="0"></td>';
            echo '<td valign="middle" width="16"><img src="include/images/tracker/flags/'.$playerflag.'.jpg" width="16" height="12" border="0"></td>';
            echo '<td align="left"><a href="'.$playerurl.'" target="_blank">'.$playername.'</a></td>';
            echo '<td align="center">'.$playermatches.'</td>';
            echo '<td align="center">'.$playerwins.'</td>';
            echo '<td align="center">'.$playerloss.'</td>';
            echo '<td align="center">'.$playerscore.'</td>';
            echo '<td align="center">'.$playerkills.'</td>';
            echo '<td align="center">'.$playerdeaths.'</td>';
            echo '<td align="center">'.$playerkdr.'</td>';
            echo '<td align="right">'.$status.'</td>';
            echo '</tr>';
    }
    echo '</table>';
    echo '<table width="100%" cellpadding="0" cellspacing="0">
     <tr>
      <td align="center"><br><b>RA</b> = Playerrank || <b>CO</b> = Country || <b>K/D</b> = Fragrate (K/D Ratio)<br>Click the player name to get more detailed stats @ bf2tracker.com</td>
     </tr>
    </table>';
    }
    
    ?>


    Habe es getestet und es geht hier der link =
    t0p0lin0.t0.funpic.de/index.php?bf2tracker
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    wizzmann Mitglied
    Registriert seit
    06.03.2008
    Beiträge
    27
    Beitragswertungen
    0 Beitragspunkte
    jo hab ja schon oben im edit2 geschrieben, dass ich es hinbekommen hab zwinker und ich habs zu 99% so gemacht wie dus beschrieben hattest, aber danke trotzdem so isses leichter nachzuvollziehen für andere frech
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    LumaX Mitglied
    Registriert seit
    24.01.2008
    Beiträge
    41
    Beitragswertungen
    0 Beitragspunkte
    Hallo,

    ich habe zum Thema BF2Tracker auch ne Frage:

    Ich habe das Modul auf meiner HP eingebunden, und es funktioniert im Großen und Ganzen.

    Aber leider werden die Clan-Stats nicht angezeigt.

    Woran kann das liegen?

    Der Clan ist auf BF2tracker.com natürlich registriert.

    externer Link

    Clanname auf bf2tracker.com = Agonie, ID: 11433

    Danke im Voraus für Eure Hilfe

    Gruß

    LumaX
    Gruß

    Martin

    externer Link
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Module und Modifikationen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten