Portal Greentube

Alle Zeiten sind UTC + 1 Stunde




Forum gesperrt Dieses Thema ist gesperrt. Du kannst keine Beiträge editieren oder weitere Antworten erstellen.  [ 85 Beiträge ]  Gehe zu Seite 1, 2, 3, 4  Nächste
Autor Nachricht
 Betreff des Beitrags: Live-Ranking
BeitragVerfasst: Mi Nov 26, 2014 22:53:57 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: Mi Nov 26, 2008 22:00:35
Beiträge: 307
Wohnort: Linz
Geschlecht: Männlich
Alter: 27
SC-Nickname: MagicBedda
Nationencup: Sealand
Flagge:
Ziel: Top 250
OS: Windows 10
Danke gegeben: 14
Danke bekommen: 71
 
Das Live-Ranking ist zurück :mrgreen:

Habe mir heute mal angesehen ob ich mein altes Skript wieder zum Laufen bringe. Anfangs habe ich jedoch gar keinen oder keinen sinnvolen Request erhalten bis ich den Hinweis von schnutz in einem anderen Thread entdeckt habe. Und siehe da, nach der Umstellung des Aufrufes und Anpassung der ID's für die einzelnen Strecken funktioniert alles wieder einwandfrei. Vielen Dank dafür ;)

Zurzeit funktioniert nur die Rangliste für die Desktop-Version, habe die ID's der Mobilen-Rangliste noch nicht ermitteln können (werden nachgereicht).
Aber abgesehen davon hat sich eigentlich nichts verändert, wer also das Skript letztes Jahr schon verwendet hat sollte keine Probleme haben.

Es werden wieder alle Wetterbedingungen, Minimodes und ein All-Weather-Ranking unterstützt.

Viel Spaß damit!

Code:
<!-- Header des Teams -->
<H1 style="font-size: 24px; vertical-align: middle";><img src="http://www.moneypedia.de/images/thumb/8/86/Sealand1flag.jpg/200px-Sealand1flag.jpg" width="40" height="25" border="1" alt="Sealand" /> Team Fürstentum Sealand</H1>
<?php
   // Fehlermeldungen/Warnungen ausgeben
   //error_reporting(E_ALL);
   //ini_set('display_errors', '1');
   
   ErzeugeKonstanten();
   
   $nick = "";
   $playerData = "";
   $allWeatherMili = "";
   $skiSettings = array();
   
   // Für jede Art von Rennen ein Array
   $rankingSun  = array();
   $rankingSnow = array();
   $rankingIce  = array();
   $rankingRace = array();
   $rankingPS   = array();
   $rankingAll  = array();
   
   // Nicknamen der Fahrer die aufgelistet werden sollen
   $nicks = array('DaKoni', 'Cr4zy8B4ll', 'Jaegermeister', 'frfr', 'gustel007', 'm4xx_rko', 'MagicBedda', 'ManiTheKing', 'MonkeyDLuffy', 'NatDwo', 'NewbloodII', 'surfer_flo', 'Superkeks30', 'madmax68', 'Spunkfrau', 'Schneehasel');
   
   // Die ID der einzelnen Rennen für das Ranking setzen
   $competitionIdSun  = BEAVER_SUN;
   $competitionIdSnow = BEAVER_SNOW;
   $competitionIdIce  = BEAVER_ICE;
   $competitionIdRace = BEAVER_RACE;
   $competitionIdPS   = MUENCHEN_Q;

   // Sollen Ski-Einstellungen geladen werden?
   $SkiEinstellungLaden = TRUE;
   
   // Lädt die Skieinstellungen
   LoadSkiSettings();
   
   // Lädt die Spielerprofile und befüllt die Rankings
   LoadRankings(DESKTOP);
   
   // Die Rankings die angezeigt werden sollen
   ErzeugeRanking($rankingRace, BEAVER,   RACE);
   ErzeugeRanking($rankingSun,  BEAVER,   SUN);
   ErzeugeRanking($rankingSnow, BEAVER,   SNOW);
   ErzeugeRanking($rankingIce,  BEAVER,   ICE);
   ErzeugeRanking($rankingAll,  BEAVER,   ALL);
   ErzeugeRanking($rankingPS,   MUENCHEN, PS);
     
   //-------------------------------
   // Hilfsmethoden
   //-------------------------------
   
   //Lade die Skieinstellungen
   function LoadSkiSettings()
   {
      GLOBAL $SkiEinstellungLaden;
      
      if($SkiEinstellungLaden)
      {
         GLOBAL $nicks;
         GLOBAL $nick;
         GLOBAL $skiSettings;
       
         GLOBAL $competitionIdSun;
         GLOBAL $competitionIdSnow;
         GLOBAL $competitionIdIce;
         GLOBAL $competitionIdRace;
         GLOBAL $competitionIdPS;
       
         foreach ($nicks as $nick)
         {   

            // Skieinstellungen der Spieler abrufen
            $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdSun.'&name='.urlencode($nick));
            $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdSnow.'&name='.urlencode($nick));
            $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdIce.'&name='.urlencode($nick));
            $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdRace.'&name='.urlencode($nick));
            $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdPS.'&name='.urlencode($nick));
         }   
       
         $curl_Rudi = array();
      
         // erzeuge einen neuen cURL-Multi-Handle
         $curl_multi_handle_Rudi = curl_multi_init();
       
         for($i = 0; $i < count($urls_Rudi); $i++)
         {
            $url_Rudi = $urls_Rudi[$i];

            // erzeuge einen neuen cURL-Handle
            $curl_Rudi[$i] = curl_init($url_Rudi);         
            curl_setopt($curl_Rudi[$i], CURLOPT_RETURNTRANSFER, TRUE);
            curl_multi_add_handle($curl_multi_handle_Rudi, $curl_Rudi[$i]);
         }   
         do
         {
            curl_multi_exec($curl_multi_handle_Rudi, $running_Rudi);
         } while($running_Rudi > 0) ;
       
         for($i = 0; $i < count($urls_Rudi); $i++)
         {
            $result_Rudi = curl_multi_getcontent($curl_Rudi[$i]);
            preg_match("/\[.*\]/", $result_Rudi, $helpSki);
            $helpSki = str_replace("[", "", $helpSki);
            $helpSki = str_replace("]", "", $helpSki);
            $helpSki = str_replace("\"", "", $helpSki);
            if ((count($helpSki) > 0) && (strlen($helpSki[0] >= 1)))
            {   
               $skiSettings[] = $helpSki[0];
            }
         }
      }
   }

   // Lädt die Skieinstellungen für einen Fahrer (wenn kein Request von Rudi kommt)
   function LoadSkiSettingsPlayer($player)
   {
      GLOBAL $SkiEinstellungLaden;
      
      if($SkiEinstellungLaden)
      {
         GLOBAL $skiSettings;
         
         GLOBAL $competitionIdSun;
         GLOBAL $competitionIdSnow;
         GLOBAL $competitionIdIce;
         GLOBAL $competitionIdRace;
         GLOBAL $competitionIdPS;
               
         // Skieinstellungen der Spieler abrufen
         $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdSun.'&name='.urlencode($player));
         $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdSnow.'&name='.urlencode($player));
         $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdIce.'&name='.urlencode($player));
         $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdRace.'&name='.urlencode($player));
         $urls_Rudi[] = sprintf('http://www.skirudi.info/search.php?tournamentid='.$competitionIdPS.'&name='.urlencode($player));
         
         $curl_Rudi = array();
         
         // erzeuge einen neuen cURL-Multi-Handle
         $curl_multi_handle_Rudi = curl_multi_init();
         
         for($i = 0; $i < count($urls_Rudi); $i++)
         {
            $url_Rudi = $urls_Rudi[$i];
            
            // erzeuge einen neuen cURL-Handle
            $curl_Rudi[$i] = curl_init($url_Rudi);
            curl_setopt($curl_Rudi[$i], CURLOPT_RETURNTRANSFER, TRUE);
            curl_multi_add_handle($curl_multi_handle_Rudi, $curl_Rudi[$i]);
         }
         do
         {
            curl_multi_exec($curl_multi_handle_Rudi, $running_Rudi);
         } while($running_Rudi > 0) ;
         
         for($i = 0; $i < count($urls_Rudi); $i++)
         {
            $result_Rudi = curl_multi_getcontent($curl_Rudi[$i]);
            preg_match("/\[.*\]/", $result_Rudi, $helpSki);
            $helpSki = str_replace("[", "", $helpSki);
            $helpSki = str_replace("]", "", $helpSki);
            $helpSki = str_replace("\"", "", $helpSki);
            if ((count($helpSki) > 0) && (strlen($helpSki[0] >= 1)))
            {
               $skiSettings[] = $helpSki[0];
            }
         }
         curl_multi_close($curl_multi_handle_Rudi);
      }
   }
   
   //Befüllt die Rankings
   function LoadRankings($gameId)
   {
      GLOBAL $nicks;
      GLOBAL $nick;
      GLOBAL $playerData;
      GLOBAL $allWeatherMili;
     
      GLOBAL $rankingSun;
      GLOBAL $rankingSnow;
      GLOBAL $rankingIce;
      GLOBAL $rankingRace;
      GLOBAL $rankingPS;
      GLOBAL $rankingAll;
     
      GLOBAL $competitionIdSun;
      GLOBAL $competitionIdSnow;
      GLOBAL $competitionIdIce;
      GLOBAL $competitionIdRace;
      GLOBAL $competitionIdPS;
     
      $url = sprintf('https://www.ski-challenge.com/gm-proxy.php');
     
      $curl_array = array();
     
      // erzeuge einen neuen cURL-Multi-Handle
      $curl_multi_handle = curl_multi_init();
      
      for($i = 0; $i < count($nicks); $i++)
      {
         // erzeuge einen neuen cURL-Handle
         $curl_array[$i] = curl_init($url);
         
         //Settings
         curl_setopt($curl_array[$i], CURLOPT_ENCODING, "deflate, gzip");
         curl_setopt($curl_array[$i], CURLOPT_POST, 1);
         curl_setopt($curl_array[$i], CURLOPT_POSTFIELDS, 'service=1&function=GetPlayerProfileByNick&gameId='.$gameId.'&nick='.urlencode($nicks[$i]));
         curl_setopt($curl_array[$i], CURLOPT_HTTPHEADER, array(
         "Accept: */*",
         "Accept-Language: de-DE,de,q=0.5",
         "Host: www.ski-challenge.com",
         "User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)",
         "X-Requested-With: XMLHttpRequest",
         ));
         curl_setopt($curl_array[$i], CURLOPT_SSL_VERIFYHOST, 0);
         curl_setopt($curl_array[$i], CURLOPT_SSL_VERIFYPEER, FALSE);
         curl_setopt($curl_array[$i], CURLOPT_RETURNTRANSFER, TRUE);
         
         curl_multi_add_handle($curl_multi_handle, $curl_array[$i]);
      }   
      do
      {
         curl_multi_exec($curl_multi_handle, $running);
      } while($running > 0);

      for($i = 0; $i < count($nicks); $i++)
      {
         $result = curl_multi_getcontent($curl_array[$i]);

         // führe die Aktion aus und gebe die Daten an den Browser weiter
         $xml = new SimpleXMLElement($result);
         
         //print_r($xml); //Gibt das gesamte Ergebnis als XML-Element aus
         
         $nick = $xml->playerDetails->nick;
      
         $playerData = $xml->playerSpecifics->SpecificData;
         
         $allWeatherMili = 0;
         $counterAllWeather = 0;
         
         // Durchsuche alle gefahrenen Zeiten des Spielers
         foreach ($xml->playerRankings->Ranking as $key => $row)
         {   
            //Je nach Rennen (Strecke, Bedingung) ein anderes Array befüllen
            if ($row->competitionId == $competitionIdSun)
            {
               $rankingSun[]   = SetRankingArray($row, $competitionIdSun);
               $allWeatherMili = $allWeatherMili + ErmittleZeitMili($row->p1);
               $counterAllWeather++;
            }
            elseif ($row->competitionId == $competitionIdSnow)
            {
               $rankingSnow[]  = SetRankingArray($row, $competitionIdSnow);
               $allWeatherMili = $allWeatherMili + ErmittleZeitMili($row->p1);
               $counterAllWeather++;
            }
            elseif ($row->competitionId == $competitionIdIce)
            {
               $rankingIce[]   = SetRankingArray($row, $competitionIdIce);
               $allWeatherMili = $allWeatherMili + ErmittleZeitMili($row->p1);
               $counterAllWeather++;
            }
            elseif ($row->competitionId == $competitionIdRace)
            {
               $rankingRace[] = SetRankingArray($row, $competitionIdRace);
            }
            elseif ($row->competitionId == $competitionIdPS)
            {
               $rankingPS[] = SetRankingArray($row, $competitionIdPS);
            }
         }       
         
         //Nur Fahrer hinzufügen die bei allen Bedingungen gefahren sind
         if ($counterAllWeather == 3)
         {
            $rankingAll[] = SetRankingArrayAllWeather();
         }
      }
   }
   
   //Zeit ermitteln; Format(0:00,000)
   function ErmittleZeit($time_micro)
   {           
      $min_temp = substr($time_micro, 0, -3) / 60;
         
      $min = substr($min_temp, 0, 1);
         
      $sek = substr($time_micro, 0, -3) - ($min * 60);
      
      if (strlen($sek) <= 1)
      {
         $sek = "0".$sek;
      }
     
      $mili = substr($time_micro, -3);
     
      return $min .":". $sek .",". $mili;
   }
   
   //Differenz zwischen 2 Zeiten ermitteln
   function ErmittleDiff($timeVorher, $timeNachher)
   {
      $helpDiff = $timeNachher - $timeVorher;
      $newMin = floor($helpDiff / 60000);
      $helpDiff = $helpDiff - ($newMin * 60000);
      $newSec = floor($helpDiff / 1000);
      $helpDiff = $helpDiff - ($newSec * 1000);
      $newMili = $helpDiff;
     
      if (strlen($newSec) <= 1)
      {
         $newSec = "0".$newSec;
      }
      if (strlen($newMili) <= 1)
      {
         $newMili = "0".$newMili;
      }
      if (strlen($newMili) <= 2)
      {
         $newMili = "0".$newMili;
      }
     
      return "+ ". $newMin .":". $newSec .",". $newMili;
   }
   
   //Zeit in Millisekunden ermitteln
   function ErmittleZeitMili($time_micro)
   {           
      $min_temp = substr($time_micro, 0, -3) / 60;
         
      $min = substr($min_temp, 0, 1);
         
      $sek = substr($time_micro, 0, -3) - ($min * 60);
     
      if (strlen($sek) <= 1)
      {
         $sek = "0".$sek;
      }
     
      $mili = substr($time_micro, -3);
     
      return ($min * 60000) + ($sek * 1000) + $mili;
   }
   
   //Zeit für die All-Weather-Wertung berechnen
   function ErmittleZeitAllWeather($milisec)
   {
      $newMin = floor($milisec / 60000);
      $milisec = $milisec - ($newMin * 60000);
      $newSec = floor($milisec / 1000);
      $milisec = $milisec - ($newSec * 1000);
      $newMili = $milisec;
     
      if (strlen($newSec) <= 1)
      {
         $newSec = "0".$newSec;
      }
      if (strlen($newMili) <= 1)
      {
         $newMili = "0".$newMili;
      }
      if (strlen($newMili) <= 2)
      {
         $newMili = "0".$newMili;
      }
      
      return $newMin .":". $newSec .",". $newMili;
   }
   
   //Befüllt das Array für das Ranking
   function SetRankingArray($xmlArr, $compId)
   {   
      GLOBAL $nick;
      GLOBAL $playerData;
      GLOBAL $skiSettings;
     
      $zeit = ErmittleZeit($xmlArr->p1);
     
      $milisec = ErmittleZeitMili($xmlArr->p1);
     
      $position = $xmlArr->position;
     
      $km = 0;
     
      foreach ($playerData as $key => $row)
      {
         if (($row->competitionId == $compId) && ($row->specificId == KMID))
         {
            $km = $row->value / 1000;
            break;
         }
      }
     
      $ski = "";
     
      foreach ($skiSettings as $key => $row)
      {     
         $row = explode(",", $row);
         if (($row[7] == $compId) && ($row[1] == $nick))
         {
            $ski = $row[3]."-".$row[4]."-".$row[5];
            break;
         }
      }
      
      if ($ski == "")
      {
         LoadSkiSettingsPlayer($nick);
         foreach ($skiSettings as $key => $row)
         {
            $row = explode(",", $row);
            if (($row[7] == $compId) && ($row[1] == $nick))
            {
               $ski = $row[3]."-".$row[4]."-".$row[5];
               break;
            }
         }
      }
      
      return array('Platz' =>$position,'Fahrer' =>$nick,'Zeit' =>$zeit,'Km' =>$km, 'Mili' =>$milisec, 'Ski' =>$ski);
   }
   
   //Befüllt das Array für das Ranking (AllWeather)
   function SetRankingArrayAllWeather()
   {   
      GLOBAL $nick;
      GLOBAL $playerData;
      GLOBAL $allWeatherMili;
      GLOBAL $competitionIdSun;
      GLOBAL $competitionIdSnow;
      GLOBAL $competitionIdIce;
     
      $zeit = ErmittleZeitAllWeather($allWeatherMili);
           
      $milisec = $allWeatherMili;
     
      $position = "";
      $ski = "";
     
      $km = 0;
     
      foreach ($playerData as $key => $row)
      {
         if ((($row->competitionId == $competitionIdSun)  && ($row->specificId == KMID)) ||
            (($row->competitionId == $competitionIdSnow) && ($row->specificId == KMID)) ||
            (($row->competitionId == $competitionIdIce)  && ($row->specificId == KMID)))
         {
            $km = $km + $row->value;
         }
      }
     
      if ($km > 0)
      {
         $km = $km / 1000;
      }
     
      return array('Platz' =>$position,'Fahrer' =>$nick,'Zeit' =>$zeit,'Km' =>$km, 'Mili' =>$milisec, 'Ski' =>$ski);
   }
   
   //Baut die Ranking-Table auf
   function ErzeugeRanking($rankArray, $strecke, $bedingung)
   {
      if (count($rankArray) > 0)
      {
         echo "<br /><H3>".$strecke." - ".$bedingung."</H3>";
     
         foreach ($rankArray as $key => $row)
         {         
            $platz[$key]  = $row['Platz'];
            $player[$key] = $row['Fahrer'];
            $zeit[$key]   = $row['Zeit'];
            $mili[$key]   = $row['Mili'];
            $km[$key]     = $row['Km'];
            $ski[$key]    = $row['Ski'];
         }
         
         if ($bedingung <> ALL)
         {
            array_multisort($platz, SORT_NUMERIC, $rankArray);
         }
         else
         {
            array_multisort($mili, SORT_NUMERIC, $rankArray);
         }
         
         echo "<table border='0'>";
         echo "<colgroup>";
         echo "<col width='30'>";
         echo "<col width='10'>";
         if ($bedingung <> ALL)
         {
            echo "<col width='60'>";
            echo "<col width='10'>";
         }
         echo "<col width='110'>";
         echo "<col width='10'>";
         echo "<col width='60'>";
         echo "<col width='10'>";
         echo "<col width='80'>";
         echo "<col width='10'>";
         echo "<col width='80'>";
         echo "<col width='10'>";
         echo "<col width='60'>";
         if ($bedingung <> ALL)
         {
            echo "<col width='10'>";
            echo "<col width='70'>";
         }
         echo "</colgroup>";
         echo "<tr>";
         
         echo "<th style='text-align: center;'>Pos</th>";
         echo "<th style='text-align: center;'>  </th>";
         if ($bedingung <> ALL)
         {
            if ($bedingung == RACE)
            {
               echo "<th style='text-align: center;'>Rennen</th>";
            }
            else
            {
               echo "<th style='text-align: center;'>Quali</th>";
            }
            echo "<th style='text-align: center;'>  </th>";
         }
         echo "<th style='text-align: center;'>Athlet</th>";
         echo "<th style='text-align: center;'>  </th>";
         echo "<th style='text-align: center;'>Zeit</th>";
         echo "<th style='text-align: center;'>  </th>";
         echo "<th style='text-align: center;'>Diff</th>";
         echo "<th style='text-align: center;'>  </th>";
         echo "<th style='text-align: center;'>Diff 1.</th>";
         echo "<th style='text-align: center;'>  </th>";
         echo "<th style='text-align: center;'>Km</th>";
         if ($bedingung <> ALL)
         {
            echo "<th style='text-align: center;'>  </th>";
            echo "<th style='text-align: center;'>Ski</th>";
         }
         echo "</tr>";
         
         $index = 1;
         $helpMili = 0;
         $helpMiliFirst = 0;
         $newDiff = "";
         $newDiffGesamt = "";
         
         foreach ($rankArray as $key => $row)
         {     
            if ($index == 1)
            {
               $helpMiliFirst = $row['Mili'];
            }
            if ($index > 1)
            {
               $newDiff = ErmittleDiff($helpMili, $row['Mili']);
               $newDiffGesamt = ErmittleDiff($helpMiliFirst, $row['Mili']);
            }
            $helpMili = $row['Mili'];
           
            echo "<tr>";
            echo "<td style='text-align: right;'>$index</td>";
            echo "<td style='text-align: center;'>  </td>";
            if ($bedingung <> ALL)
            {
               echo "<td style='text-align: right;'>".$row['Platz']."</td>";
               echo "<td style='text-align: center;'>  </td>";
            }
            echo "<td style='text-align: left;'>".$row['Fahrer']."</td>";
            echo "<td style='text-align: center;'>  </td>";
            echo "<td style='text-align: right;'>".$row['Zeit']."</td>";
            echo "<td style='text-align: center;'>  </td>";
            echo "<td style='text-align: right;'>".$newDiff."</td>";
            echo "<td style='text-align: center;'>  </td>";
            echo "<td style='text-align: right;'>".$newDiffGesamt."</td>";
            echo "<td style='text-align: center;'>  </td>";
            echo "<td style='text-align: right;'>".number_format($row['Km'], '2', ',', '.')."</td>";
            if ($bedingung <> ALL)
            {
               echo "<td style='text-align: center;'>  </td>";
               echo "<td style='text-align: right;'>".$row['Ski']."</td>";
            }
            echo "</tr>";
            $index++;
         }
         echo "</table>";       
      }
   }
   
   function ErzeugeKonstanten()
   {
      //---------------------------------------------------------------
      //Konstanten für die einzelnen Strecken und Bedingungen (Desktop)
      //---------------------------------------------------------------
      
      //----BEAVER CREEK----
      define('BEAVER_SUN',  880);
      define('BEAVER_SNOW', 881);
      define('BEAVER_ICE',  882);
      define('BEAVER_RACE', 883);
      //Minimodes
      define('BEAVER_FREE',    884);
      define('BEAVER_BLACK',   885);
      define('BEAVER_ATTACK',  886);
      define('BEAVER_LAST',    887);
      define('BEAVER_ARCADE',  888);
      define('BEAVER_EXTREME', 889);
      
      //----GRÖDEN----
      define('GROEDEN_SUN',  895);
      define('GROEDEN_SNOW', 896);
      define('GROEDEN_ICE',  897);
      define('GROEDEN_RACE', 898);
      //Minimodes
      define('GROEDEN_FREE',    899);
      define('GROEDEN_BLACK',   900);
      define('GROEDEN_ATTACK',  901);
      define('GROEDEN_LAST',    902);
      define('GROEDEN_ARCADE',  903);
      define('GROEDEN_EXTREME', 904);
      
      //----BORMIO----
      define('BORMIO_SUN',  910);
      define('BORMIO_SNOW', 911);
      define('BORMIO_ICE',  912);
      define('BORMIO_RACE', 913);
      //Minimodes
      define('BORMIO_FREE',    914);
      define('BORMIO_BLACK',   915);
      define('BORMIO_ATTACK',  916);
      define('BORMIO_LAST',    917);
      define('BORMIO_ARCADE',  918);
      define('BORMIO_EXTREME', 919);
      
      //----WENGEN----
      define('WENGEN_SUN',  920);
      define('WENGEN_SNOW', 921);
      define('WENGEN_ICE',  922);
      define('WENGEN_RACE', 923);
      //Minimodes
      define('WENGEN_FREE',    924);
      define('WENGEN_BLACK',   925);
      define('WENGEN_ATTACK',  926);
      define('WENGEN_LAST',    927);
      define('WENGEN_ARCADE',  928);
      define('WENGEN_EXTREME', 929);
      
      //----KITZBÜHEL----
      define('KITZ_SUN',  930);
      define('KITZ_SNOW', 931);
      define('KITZ_ICE',  932);
      define('KITZ_RACE', 933);
      //Minimodes
      define('KITZ_FREE',    934);
      define('KITZ_BLACK',   935);
      define('KITZ_ATTACK',  936);
      define('KITZ_LAST',    937);
      define('KITZ_ARCADE',  938);
      define('KITZ_EXTREME', 939);
      
      //----BEAVER CREEK CS----
      define('BEAVER_CS_SUN',  940);
      define('BEAVER_CS_SNOW', 941);
      define('BEAVER_CS_ICE',  942);
      define('BEAVER_CS_RACE', 943);
      
      //----GARMISCH----
      define('GARMISCH_SUN',  944);
      define('GARMISCH_SNOW', 946);
      define('GARMISCH_ICE',  947);
      define('GARMISCH_RACE', 948);
      //Minimodes
      define('GARMISCH_FREE',    949);
      define('GARMISCH_BLACK',   950);
      define('GARMISCH_ATTACK',  951);
      define('GARMISCH_LAST',    952);
      define('GARMISCH_ARCADE',  953);
      define('GARMISCH_EXTREME', 954);
      
      //----SCHLADMING---- ?!
      define('SCHLADMING_SUN',  972);
      define('SCHLADMING_SNOW', 973);
      define('SCHLADMING_ICE',  974);
      define('SCHLADMING_RACE', 975);
      //Minimodes
      define('SCHLADMING_FREE',    976);
      define('SCHLADMING_BLACK',   977);
      define('SCHLADMING_ATTACK',  978);
      define('SCHLADMING_LAST',    979);
      define('SCHLADMING_ARCADE',  980);
      define('SCHLADMING_EXTREME', 981);
      
      //----MÜNCHEN----
      define('MUENCHEN_Q', 945);
      
      //--------------------------------------------------------------
      //Konstanten für die einzelnen Strecken und Bedingungen (Mobile)  !!!!! NICHT AKTUELL !!!!!!
      //--------------------------------------------------------------
      
      //----BEAVER CREEK----
      define('BEAVER_SUN_MOB',  683);
      define('BEAVER_SNOW_MOB', 684);
      define('BEAVER_ICE_MOB',  685);
      define('BEAVER_RACE_MOB', 686);
      //Freeride
      define('BEAVER_FREE_MOB', 753);
      
      //----GRÖDEN----
      define('GROEDEN_SUN_MOB',  687);
      define('GROEDEN_SNOW_MOB', 688);
      define('GROEDEN_ICE_MOB',  689);
      define('GROEDEN_RACE_MOB', 690);
      //Freeride
      define('GROEDEN_FREE_MOB', 754);
      
      //----BORMIO----
      define('BORMIO_SUN_MOB',  691);
      define('BORMIO_SNOW_MOB', 692);
      define('BORMIO_ICE_MOB',  693);
      define('BORMIO_RACE_MOB', 694);
      //Freeride
      define('BORMIO_FREE_MOB', 755);
      
      //----WENGEN----
      define('WENGEN_SUN_MOB',  695);
      define('WENGEN_SNOW_MOB', 696);
      define('WENGEN_ICE_MOB',  697);
      define('WENGEN_RACE_MOB', 698);
      //Freeride
      define('WENGEN_FREE_MOB', 756);
      
      //----KITZBÜHEL----
      define('KITZ_SUN_MOB',  699);
      define('KITZ_SNOW_MOB', 700);
      define('KITZ_ICE_MOB',  701);
      define('KITZ_RACE_MOB', 702);
      //Freeride
      define('KITZ_FREE_MOB', 757);
      
      //----GARMISCH----
      define('GARMISCH_SUN_MOB',  703);
      define('GARMISCH_SNOW_MOB', 704);
      define('GARMISCH_ICE_MOB',  705);
      define('GARMISCH_RACE_MOB', 706);
      //Freeride
      define('GARMISCH_FREE_MOB', 758);
      
      //----SOTSCHI----
      define('SOTSCHI_SUN_MOB',  707);
      define('SOTSCHI_SNOW_MOB', 708);
      define('SOTSCHI_ICE_MOB',  709);
      define('SOTSCHI_RACE_MOB', 710);
      //Freeride
      define('SOTSCHI_FREE_MOB', 759);   
      
      //----VAL'D ISERE----
      define('VALDI_SUN_MOB',  760);
      define('VALDI_SNOW_MOB', 761);
      define('VALDI_ICE_MOB',  762);
      //Freeride
      define('VALDI_FREE_MOB', 763);
      
      //----SCHLADMING----
      define('SCHLADMING_SUN_MOB',  764);
      define('SCHLADMING_SNOW_MOB', 765);
      define('SCHLADMING_ICE_MOB',  766);
      //Freeride
      define('SCHLADMING_FREE_MOB', 767);
      
      //----BEAVER CREEK SG----
      define('BEAVER_SG_SUN_MOB',  768);
      define('BEAVER_SG_SNOW_MOB', 769);
      define('BEAVER_SG_ICE_MOB',  770);
      //Freeride
      define('BEAVER_SG_FREE_MOB', 771);
      
      //-------------------------------------------
      //Konstanten für die einzelnen Streckennamen
      //-------------------------------------------
      define('BEAVER',     'Beaver Creek');
      define('GROEDEN',    'Gröden');
      define('BORMIO',     'Bormio');
      define('WENGEN',     'Wengen');
      define('KITZ',       'Kitzbühel');
      define('GARMISCH',   'Garmisch');
      define('SCHLADMING', 'Schladming');
      define('MUENCHEN',   'München');
      define('VALDI',      'Val\'d Isere');
      define('SOCHI',      'Sochi');
      define('BEAVER_SG',  'Beaver Creek SG');
      define('BEAVER_CS',  'Beaver Creek CS');
      
      //-----------------------------------------
      //Konstanten für die einzelnen Bedingungen
      //-----------------------------------------
      define('SUN',     'Sonne');
      define('SNOW',    'Schnee');
      define('ICE',     'Eis');
      define('RACE',    'Rennen');
      define('PS',      'Parallelslalom');
      define('ALL',     'All-Weather');
      define('FREE',    'Freeride');
      define('BLACK',   'Blitzeis');
      define('ATTACK',  'Zeitbombe');
      define('LAST',    'Letzte Talfahrt');
      define('ARCADE',  'Arcade');
      define('EXTREME', 'Extrem');
      
      //------------------------------------------
      //Konstanten für die verschiedene Versionen
      //------------------------------------------
      define('DESKTOP', 1737);
      define('MOBILE',  1738);
      
      //Konstante als Hilfe zum Auslesen der Kilometer, Stürze, ...
      define('ZEITID', 12);
      define('KMID', 13);
      define('STARTID', 14);
      define('ZIELID', 15);
      define('SPRUNGID', 22);
      define('KMHID', 24);
      define('STURZID', 25);
   }
?>
PS: Ich weiß jetzt nicht genau wie das mit dem Abruf der Daten von GT aussieht, da war im Sommer ja einiges los. Ich würde vorläufig mal sagen: "Verwendung auf eigene Gefahr" :rolleyes:
Ist mir schon klar das web scrapping da eine Art Grauzone darstellt, aber es ist ja nicht so das wir die Daten "missbrauchen". Aber da einige hier im Forum anscheinend eh schon mit GT Kontakt aufgenommen haben wird sich das sicher in Kürze klären lassen.

UPDATE: Jetzt wieder mit Ski-Einstellungen von Rudi ;) Falls die Ski-Einstellungen nicht gewünscht werden (Aufbau der Seite geht dann wieder schneller) einfach in der Zeile
Code:
   // Sollen Ski-Einstellungen geladen werden?
   $SkiEinstellungLaden = TRUE;
den Wert von TRUE auf FALSE ändern, viel Spaß.

_________________
Ergebnisse SC: immer so um die Top 500/300; SC 2010: 189.
SC:Banner SC:Banner


Zuletzt geändert von MagicBedda am Fr Dez 05, 2014 11:40:54, insgesamt 3-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
Für diesen Beitrag haben sich bei MagicBedda folgende User bedankt:
B1Tho, filu84, Godson, guenschi, MattMurdog, Oilfoot, Sandreas, schnutz
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Mi Nov 26, 2014 23:48:20 
Streif-enhörnchen
Streif-enhörnchen
Benutzeravatar
Offline

Registriert: Do Dez 20, 2012 17:37:17
Beiträge: 499
Geschlecht: Männlich
Alter: 32
SC-Nickname: xXNobodyXx
Nationencup: Team Liechtenstein
Flagge:
Ziel: Top 10
OS: Linux
Danke gegeben: 11
Danke bekommen: 85
 
Zu dem PS Teil:
Ich habe in meiner Mail an GT unter anderm auch nachgefragt ob ich Daten im rahmen meiner App vom Server laden darf.
Einfach zur Vollständigkeit halber, ohne mich informiert zu haben ob dies überhaupt ein rechtliches Problem ist.
Ich denke jedoch das dies kein Problem sein sollte.

Bin gespannt was die Tuben antworten :smt017

_________________


Studio Liechtenstein:



Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Do Nov 27, 2014 07:26:51 
Europameister
Europameister
Benutzeravatar
Offline

Registriert: Mo Jan 18, 2010 09:01:52
Beiträge: 2611
Geschlecht: Männlich
Alter: 33
SC-Nickname: Filu84
Nationencup: Team Hungary
Flagge:
Ziel: Top 100
OS: Windows 7
Danke gegeben: 179
Danke bekommen: 382
 
Vielen Dank MagicBedda dass du den Code aktualisiert hattest. Habs schon selber versucht bin aber an einem kleinen Fehler gescheitert. Naja wenn man sonst das ganze Jahr nichts mit programmieren zu tun hat ists schwierig.

Aber zurzeit scheint die Abfrage immer noch überarbeitet zu werden, da momentan folgende meldung erscheint

Code:
Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in /home/httpd/vhosts/sgmols.ch/httpdocs/togo/Ski-Challenge/SC15/Team_Hungary_LiveRanking-test.php:163 Stack trace: #0 /home/httpd/vhosts/sgmols.ch/httpdocs/togo/Ski-Challenge/SC15/Team_Hungary_LiveRanking-test.php(163): SimpleXMLElement->__construct('') #1 /home/httpd/vhosts/sgmols.ch/httpdocs/togo/Ski-Challenge/SC15/Team_Hungary_LiveRanking-test.php(35): LoadRankings(1737) #2 {main} thrown in /home/httpd/vhosts/sgmols.ch/httpdocs/togo/Ski-Challenge/SC15/Team_Hungary_LiveRanking-test.php on line 163

_________________


BildSC:BannerBild

SC:Banner

Platzierungen in der Vergangenheit:
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Do Nov 27, 2014 10:07:12 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: So Nov 29, 2009 19:43:41
Beiträge: 364
Geschlecht: Männlich
Alter: 48
SC-Nickname: B1Tho
Nationencup: Team Seychelles
Ziel: Top 100
OS: Windows XP
Danke gegeben: 5
Danke bekommen: 3
 
Super, aber leider scheint es noch nicht zu funzen. :smt017

_________________

SC:BannerSC:Banner


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Do Nov 27, 2014 11:43:22 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: Mi Nov 26, 2008 22:00:35
Beiträge: 307
Wohnort: Linz
Geschlecht: Männlich
Alter: 27
SC-Nickname: MagicBedda
Nationencup: Sealand
Flagge:
Ziel: Top 250
OS: Windows 10
Danke gegeben: 14
Danke bekommen: 71
 
Ich hatte beim Testen und habe auch jetzt gerade keine Probleme. Aber kann sein das ich bisher immer Glück hatte, warten wir mal ab.

Bild

_________________
Ergebnisse SC: immer so um die Top 500/300; SC 2010: 189.
SC:Banner SC:Banner


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Do Nov 27, 2014 12:16:11 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: So Nov 29, 2009 19:43:41
Beiträge: 364
Geschlecht: Männlich
Alter: 48
SC-Nickname: B1Tho
Nationencup: Team Seychelles
Ziel: Top 100
OS: Windows XP
Danke gegeben: 5
Danke bekommen: 3
 
Mhm komisch, aber selbst wenn ich jetzt deinen code komplett übernehme sehe ich nur 'Team Fürstentum Sealand'

_________________

SC:BannerSC:Banner


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Do Nov 27, 2014 13:09:24 
Schleppliftfahrer
Schleppliftfahrer
Offline

Registriert: Di Dez 03, 2013 08:30:07
Beiträge: 4
Geschlecht: Keine Angabe
SC-Nickname: schnoetz
Danke gegeben: 2
Danke bekommen: 3
 
Danke fürs Skript aktualisieren, ich hatte noch nicht alle Strecken-IDs ausgebessert...

In meiner Version schreibe ich den gesamten Output in ein File und lass meinen Teammitgliedern nur das "gecachte" HTML-File ansehen. Das wird per Cronjob alle 5 min aktualisiert.
Ist immer noch aktuell genug für die meisten (am Rennwochenende dreh ich das Intervall runter auf 1 min), aber es schützt meinen und den GT-Server vor den Leuten, die im Sekundentakt refreshen...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Fr Nov 28, 2014 15:56:03 
Scriptologe
Scriptologe
Benutzeravatar
Offline

Registriert: Mo Jan 23, 2006 19:47:29
Beiträge: 4956
Wohnort: Wien
Geschlecht: Männlich
Alter: 26
Medaillen: 3
SC-Nickname: Killerbees19
Flagge:
Ziel: Ich spiele nicht
OS: Linux
Danke gegeben: 787
Danke bekommen: 1417
 
xXNobodyXx hat geschrieben:
Bin gespannt was die Tuben antworten :smt017

Und, schon eine Antwort erhalten?


MfG Christian

_________________
Ein Leben ohne SC? Niemals! Hier geht's zur OC:18 auf HAPPYTEC :smt112

SC06: n/a; SC07: 7.018; SC08: 22.446; SC09: 16.491 & 17.622 (WM); SC10: 16.197 &
6.882 (WM)
; SC11: 11.662 & 17.476 (WM); SC12: 13.124; SC13: 5.114 & 5.379 (WM)
SC14: 2.523 & 2.823 (WM); SC15: 1.819 & 2.831 (WM); SC16: 857 & 323 (Bonuscup)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Fr Nov 28, 2014 16:14:53 
Europameister
Europameister
Benutzeravatar
Offline

Registriert: Mo Jan 18, 2010 09:01:52
Beiträge: 2611
Geschlecht: Männlich
Alter: 33
SC-Nickname: Filu84
Nationencup: Team Hungary
Flagge:
Ziel: Top 100
OS: Windows 7
Danke gegeben: 179
Danke bekommen: 382
 
MagicBedda hat geschrieben:
Ich hatte beim Testen und habe auch jetzt gerade keine Probleme. Aber kann sein das ich bisher immer Glück hatte, warten wir mal ab.

Bild


Magicbedda.. läuft es bei dir nach wie vor?

bei mir klappts nicht und ich habe auch testhalber mal den code von dir unverändert benutzt

www.sgmols.ch/togo/Ski-Challenge/SC15/test.php

:smt017 :smt017

_________________


BildSC:BannerBild

SC:Banner

Platzierungen in der Vergangenheit:
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Fr Nov 28, 2014 17:14:55 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: Mi Nov 26, 2008 22:00:35
Beiträge: 307
Wohnort: Linz
Geschlecht: Männlich
Alter: 27
SC-Nickname: MagicBedda
Nationencup: Sealand
Flagge:
Ziel: Top 250
OS: Windows 10
Danke gegeben: 14
Danke bekommen: 71
 
Ja, bei mir läuft alles noch einwandfrei http://teamsealand.lima-city.de/test.php
Habe leider heute keine Zeit mir das anzusehen, aber ich werde morgen mal checken was da nicht in Ordnung ist.

_________________
Ergebnisse SC: immer so um die Top 500/300; SC 2010: 189.
SC:Banner SC:Banner


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Fr Nov 28, 2014 18:58:40 
Streif-enhörnchen
Streif-enhörnchen
Benutzeravatar
Offline

Registriert: Mi Dez 06, 2006 21:20:34
Beiträge: 481
Wohnort: @ home
Geschlecht: Männlich
Alter: 54
Medaillen: 1
SC-Nickname: GFRBodeMiller
Nationencup: Team MONACO
Flagge:
OS: Windows 7
Danke gegeben: 54
Danke bekommen: 16
 
Hallo Leutz,
weiß einer von euch wo ich die Rangliste für die Bonusstrecke im Modus Zeit-Rennen finde? Ich meine nicht die der Extremrennen.

_________________
wer bremst verliert, wer nicht bremst verliert noch mehr
Bild
BildBildBild

SC:Banner

SC'07 Gröden 56.346/Bormio 30.083/Wengen 33.840/Kitz 20.833
SC'08 Pl. 67.774
SC'09 Pl. 25.861 WM Pl. 24.177
SC'10 Pl. 22.688 WM Pl. 15.688
SC'11 Pl. 19.385 WM Pl. 10.981
SC'12 Pl. 11.835
SC'13 Pl. 24.764(Wengen nicht dabei) WM Pl. 6.082
SC'14 Pl. 6.507 Olympia Pl. 12.111
SC'15 Pl. 7.467 WM Pl. 7.019


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Fr Nov 28, 2014 20:36:06 
Streif-enhörnchen
Streif-enhörnchen
Benutzeravatar
Offline

Registriert: Do Dez 20, 2012 17:37:17
Beiträge: 499
Geschlecht: Männlich
Alter: 32
SC-Nickname: xXNobodyXx
Nationencup: Team Liechtenstein
Flagge:
Ziel: Top 10
OS: Linux
Danke gegeben: 11
Danke bekommen: 85
 
@Killerbees19:
Ja. Kann leider nur soviel sagen, als dass Greentube mir nun einen Nutzungsvertrag zukommen lassen hat.
Also leider nichts allgemein gültiges.

_________________


Studio Liechtenstein:



Nach oben
 Profil  
Mit Zitat antworten  
Für diesen Beitrag haben sich bei xXNobodyXx folgende User bedankt:
Killerbees19, TheOtherTom
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: So Nov 30, 2014 07:24:47 
Gondelfahrer
Gondelfahrer
Benutzeravatar
Offline

Registriert: Di Nov 29, 2011 16:09:49
Beiträge: 16
Geschlecht: Männlich
SC-Nickname: 4mon4marth
Flagge:
Ziel: Top 10.000
OS: Mac OSX 10.6 Snow Leopard
Danke gegeben: 8
Danke bekommen: 10
 
Hallo Coder-Kollegen

Habe mir das gestern mal angeschaut. Es ist schon so, alle Jahre was Neues... Nichtsdestotrotz, hier meine Perl Lösung. PHP Snippets hat's ja schon einige. Ich hoffe, es hilft oder inspiriert jemanden.

Code:
use strict;
use HTTP::Request::Common;
use LWP::UserAgent;
use Compress::Zlib;

my $nick = 'CanadianRocks';
my $ua = LWP::UserAgent->new;
my $res = $ua->request(
   POST 'https://www.ski-challenge.com/gm-proxy.php',
   'Accept' => '*/*',
   'Accept-Encoding' => 'gzip, deflate',
   'Accept-Language' => 'de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4',
   'Host' => 'www.ski-challenge.com',
   'User-Agent' => 'krbot.pl at ralphschuler.ch',
   'X-Requested-With' => 'XMLHttpRequest',
   Content => [
      service => '1',
      function => 'GetPlayerProfileByNick',
      gameId => '1737',
      nick => $nick
   ]
);

my $content = $res->decoded_content;
print $content;


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: So Nov 30, 2014 18:33:19 
Streif-enhörnchen
Streif-enhörnchen
Benutzeravatar
Offline

Registriert: So Dez 11, 2005 19:20:24
Beiträge: 589
Wohnort: 48°07' – 48°19' N / 16°11' – 16°34' O
Geschlecht: Männlich
Alter: 46
SC-Nickname: frfr
Nationencup: Sealand
Flagge:
OS: Windows 7
Danke gegeben: 3
Danke bekommen: 1
 
MagicBedda - Danke für dieses Live-Ranking! Einfach super! Hoffentlich haben die Tuben nix dagegen.

_________________
SC:Banner SC:Banner


SC:16: Platz 2.298 (1.076.520 Punkte) / SC:15: Platz 2.841 (877.100 Punkte) / SC:14: Platz 3.080 (879.430 Punkte) / SC:13: Platz 4.821 (509.770 Punkte) / SC:12: Platz 5.344 (706.271 Punkte) / SC:11: Platz 8.466 (494.589 Punkte) / SC:10: Platz 6.453 (554.527 Punkte) / SC:09: Platz 12.171 (427.687 Punkte) / SC:08: Platz 10.392 (450.187 Punkte) / SC:07: Platz 20.361 (20.836 Punkte) / SC:06: ? / SC:05: nicht teilgenommen


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Di Dez 02, 2014 12:09:58 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: Mi Nov 26, 2008 22:00:35
Beiträge: 307
Wohnort: Linz
Geschlecht: Männlich
Alter: 27
SC-Nickname: MagicBedda
Nationencup: Sealand
Flagge:
Ziel: Top 250
OS: Windows 10
Danke gegeben: 14
Danke bekommen: 71
 
Update: Ski-Einstellungen von Rudi sind wieder da und werden jetzt auch im Live-Ranking unterstützt -> Skript im ersten Post ist aktualisiert ;)

_________________
Ergebnisse SC: immer so um die Top 500/300; SC 2010: 189.
SC:Banner SC:Banner


Nach oben
 Profil  
Mit Zitat antworten  
Für diesen Beitrag haben sich bei MagicBedda folgende User bedankt:
MattMurdog
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Di Dez 02, 2014 12:45:07 
Ideallinien Fahrer
Ideallinien Fahrer
Benutzeravatar
Offline

Registriert: Mi Jan 01, 2014 22:11:36
Beiträge: 1312
Geschlecht: Männlich
Alter: 40
SC-Nickname: MattMurdog
Nationencup: Königreich Tonga
Flagge:
Ziel: Top 250
Danke gegeben: 100
Danke bekommen: 69
 
Reicht es die Zeilen zwischen den Kommentaren "// Die ID der einzelnen Rennen für das Ranking setzen" und "//Befüllt die Rankings" in bestehende Scripte zu überschreiben, oder muss noch woanders was geändert werden?

EDIT: ok so einfach ist es anscheinend nicht, also erst dein neues Script nehmen, Namen ersetzen und Layout anpassen.

_________________
SC:Banner
SC:Banner
SC:Banner
Gesamtplatzierungen: '11 [11.390] '12 [5.779] '13 [2.025] '14 [910] '15 [269]
TEAM 77 beim Jahrgangs-Cup '16


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Di Dez 02, 2014 13:07:57 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: Mi Nov 26, 2008 22:00:35
Beiträge: 307
Wohnort: Linz
Geschlecht: Männlich
Alter: 27
SC-Nickname: MagicBedda
Nationencup: Sealand
Flagge:
Ziel: Top 250
OS: Windows 10
Danke gegeben: 14
Danke bekommen: 71
 
Theoretisch sollte es auch ausreichen die Funktionen SetRankingArray, LoadSkiSettingsPlayer und LoadSkiSettings zu überschreiben und die Zeile $SkiEinstellungenLaden = TRUE; relativ am Anfang des Skripts einzufügen.

Müsstest du mal testen, aber ich glaube ich habe nicht mehr verändert ;)


Gesendet von iPhone mit Tapatalk

_________________
Ergebnisse SC: immer so um die Top 500/300; SC 2010: 189.
SC:Banner SC:Banner


Nach oben
 Profil  
Mit Zitat antworten  
Für diesen Beitrag haben sich bei MagicBedda folgende User bedankt:
MattMurdog
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Di Dez 02, 2014 16:18:59 
Ideallinien Fahrer
Ideallinien Fahrer
Benutzeravatar
Offline

Registriert: Mi Jan 01, 2014 22:11:36
Beiträge: 1312
Geschlecht: Männlich
Alter: 40
SC-Nickname: MattMurdog
Nationencup: Königreich Tonga
Flagge:
Ziel: Top 250
Danke gegeben: 100
Danke bekommen: 69
 
Ne, anscheinend übersehe ich was.
Meine Änderungen sind andersherum wohl leichter anzubringen, wenn es dann auch nicht läuft, melde ich mich nochmal. Trotzdem danke.

EDIT: kaum schreib ich es, find ich den Fehler doch: Beim kopieren ist eine Zeile mittendrin verloren gegangen, keine Ahnung wie das passierte.

_________________
SC:Banner
SC:Banner
SC:Banner
Gesamtplatzierungen: '11 [11.390] '12 [5.779] '13 [2.025] '14 [910] '15 [269]
TEAM 77 beim Jahrgangs-Cup '16


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Di Dez 02, 2014 16:58:43 
Skilehrer's Liebling
Skilehrer's Liebling
Offline

Registriert: Do Dez 25, 2008 13:23:08
Beiträge: 27
Wohnort: Oer-Erkenschwick
Geschlecht: Männlich
SC-Nickname: Oilfoot_2010
Danke gegeben: 2
Danke bekommen: 3
 
Ah! Es funktioniert doch, aber noch nicht wieder auf meinem Notebook! Ich hab' in diesem Jahr ein neues Notebook, und habe die gesamte Entwicklungsumgebung neu aufgesetzt. Aber es ist noch nicht alles wieder richtig konfiguriert, und da muss entweder in der php.ini oder beim Apachen noch irgend etwas faul sein! Kopiere ich das Script auf den Host, läuft es. Lokal nicht.

Ich finde die richtige Stelle noch nicht... Hat mal jemand 'nen Tipp oder 'ne Idee? Das muss doch sowas sein wie "erlaube das Auslesen externer URL" oder so. In der PHP.ini gibt's ja 'nen "allow_url_fopen". Das ist aber schon "on"...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Di Dez 02, 2014 20:11:56 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: So Nov 29, 2009 19:43:41
Beiträge: 364
Geschlecht: Männlich
Alter: 48
SC-Nickname: B1Tho
Nationencup: Team Seychelles
Ziel: Top 100
OS: Windows XP
Danke gegeben: 5
Danke bekommen: 3
 
Versteh nicht warum das heuer bei mir nicht funktionieren will. Bekomme genau wie filu84 eine Fehlermeldung bei diesem Script.

Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in /var/www/sites/bithoat/html/mohaa_liveranking.php:235 Stack trace: #0 /var/www/sites/bithoat/html/mohaa_liveranking.php(235): SimpleXMLElement->__construct('') #1 /var/www/sites/bithoat/html/mohaa_liveranking.php(44): LoadRankings(1737) #2 {main} thrown in /var/www/sites/bithoat/html/mohaa_liveranking.php on line 235

Hat vielleicht irgendeiner eine Idee wo bei uns der Fehler liegt. Leider hab ich von dem ganzen viel zu wenig Ahnung.

_________________

SC:BannerSC:Banner


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Di Dez 02, 2014 20:57:24 
Wengana
Wengana
Offline

Registriert: Di Nov 06, 2012 23:37:57
Beiträge: 376
Geschlecht: Männlich
Flagge:
Ziel: Ich spiele nicht
OS: anderes
Danke gegeben: 12
Danke bekommen: 23
 
Dem schließe ich mich mal an.
Genau die gleiche Fehlermeldung.

????

operator1


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Di Dez 02, 2014 21:40:09 
Skilehrer's Liebling
Skilehrer's Liebling
Offline

Registriert: Do Dez 25, 2008 13:23:08
Beiträge: 27
Wohnort: Oer-Erkenschwick
Geschlecht: Männlich
SC-Nickname: Oilfoot_2010
Danke gegeben: 2
Danke bekommen: 3
 
Na, sag' ich doch! Das bekomme ich lokal auch, aber auf dem Host funktioniert es. Bin nun schon stundenlag am suchen und debuggen, finde aber den Grund nicht heraus.

curl_multi_getcontent($curl_array[$i]) liefert null zurück. Daraus kann man natürlich keine XML-Daten machen.
Aber warum kommt nichts? CURLOPT_RETURNTRANSFER ist ja gesetzt. Hmmm....


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Mi Dez 03, 2014 09:44:17 
SC'ler in Ausbildung
SC'ler in Ausbildung
Benutzeravatar
Offline

Registriert: Sa Aug 07, 2010 10:56:21
Beiträge: 60
Wohnort: Steiermark
Geschlecht: Männlich
Alter: 43
SC-Nickname: kurtz
Nationencup: Team Austria
Flagge:
Ziel: Top 100
OS: Windows 8
Danke gegeben: 34
Danke bekommen: 15
 
Werden bei Euch die Skieinstellungen geladen ?? Gestern gings, heute nicht mehr ???


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Mi Dez 03, 2014 17:55:36 
Wengana
Wengana
Benutzeravatar
Offline

Registriert: Mi Nov 26, 2008 22:00:35
Beiträge: 307
Wohnort: Linz
Geschlecht: Männlich
Alter: 27
SC-Nickname: MagicBedda
Nationencup: Sealand
Flagge:
Ziel: Top 250
OS: Windows 10
Danke gegeben: 14
Danke bekommen: 71
 
An alle die das Problem mit dem "Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML'" haben. Bei einigen Forenmitgliedern hat es ausgereicht folgende Zeile
Code:
curl_setopt($curl_array[$i], CURLOPT_SSL_VERIFYPEER, FALSE);
vor dieser Zeile
Code:
curl_setopt($curl_array[$i], CURLOPT_RETURNTRANSFER, TRUE);
einzufügen. Habs jetzt auch im Code vom Startpost hinzugefügt.

Ja, Rudi's Skieinstellungen haben gestern noch funktioniert. Er wird wohl irgendetwas umgestellt haben, hatte noch keine Zeit mir das genauer anzusehen. Falls einer schon eine Idee/Lösung hat immer her damit ;)

_________________
Ergebnisse SC: immer so um die Top 500/300; SC 2010: 189.
SC:Banner SC:Banner


Zuletzt geändert von MagicBedda am Mi Dez 03, 2014 19:30:18, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
Für diesen Beitrag haben sich bei MagicBedda folgende User bedankt:
MikeTiger
 Betreff des Beitrags: Re: Live-Ranking
BeitragVerfasst: Mi Dez 03, 2014 18:00:43 
Val d'ium
Val d'ium
Benutzeravatar
Offline

Registriert: So Dez 24, 2006 09:46:42
Beiträge: 905
Wohnort: Wien
Geschlecht: Männlich
Alter: 47
SC-Nickname: MikeTiger
Nationencup: Team Vatikan
Flagge:
Ziel: Ich spiele nicht
OS: Windows 10
Danke gegeben: 155
Danke bekommen: 57
 
Danke Magic :prayer:

Jetzt haut´s hin :smt041

:partyman: :partyman: :partyman:

_________________
lg. Bild
MikeTiger


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Forum gesperrt Dieses Thema ist gesperrt. Du kannst keine Beiträge editieren oder weitere Antworten erstellen.  [ 85 Beiträge ]  Gehe zu Seite 1, 2, 3, 4  Nächste

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Deutsche Übersetzung durch phpBB.de
Style by ToBiMo (c) 2008
Eingebaut von eYeWoRRy
Hier wird Google Analytics verwendet
Impressum
cron