Bundesliga Ergebnisse

Vmtl. hast du da was an der falschen Stelle eingefügt…

Poste mal dein komplettes Skript, dann muss man nicht raten wo wie was :wink:

Grüße,
Chris

Kein Problem. Hier das Script:

// Einstellungen
$vn = 'Werder Bremen';         // Hier den Lieblingsverein angeben, dieser wird hervorgehoben
$lsc = 'bl1';                 // Den Ligashortcut eingeben. Für die Erste Bundesliga bl1.
$ls = '2014';                 // Das Jahr der Saison angeben, bei 2010/2011 -> 2010
$spt = 0;                     // Zur manuellen Anzeige des "aktuellen Spieltags". Bei 0 dynamische Anzeige!

// Ich bin ein XML-Webservice auf dem ganz viele Fußballdaten liegen
$location = 'http://www.OpenLigaDB.de/Webservices/Sportsdata.asmx?WSDL';

// paar Einstellungen, beachte mich erstmal nicht
$options = array('encoding'           => 'iso-8859-1',
                 'connection_timeout' => 5,
                 'exceptions'         => 1,
                 );

// Seifenanhänger
$client = new SoapClient($location, $options);

// Welcher Spieltag is denn nun aktuell?
$params = array('leagueShortcut' => ''.$lsc.'');
$response = $client->GetCurrentGroupOrderID($params);
$sptd = $response->GetCurrentGroupOrderIDResult;

// Übergabe-Array an OpdenLigaDB
if ($spt == 0){
$params2 = array('groupOrderID' => ''.$sptd.'', 'leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');}
else {
$params2 = array('groupOrderID' => ''.$spt.'', 'leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');}

// und das hier bekommen wir zurück
$response2 = $client->GetMatchdataByGroupLeagueSaison($params2);

// Bischen HTML und CSS
echo '<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">';
echo '<style type="text/css">';
echo 'body { background-color: #27292b; color: #fff; font: normal 14px verdana;}';
echo '.high { max-height:38px;  background-color: #3c4b60;}';
echo '.high1 { max-height:38px;  background-color: #3c4b60; background-image: url(./img/barTopTop.png); background-repeat: repeat-x;}';
echo '.high2 { max-height:38px;  background-color: #3c4b60; background-image: url(./img/barBottomBottom.png); background-repeat: repeat-x;}';
echo '.fav { max-height:38px; background-color: #ced2d7; background-image: url(./img/bgActionBar.png); background-repeat: repeat-x;}';
echo '.row1 { max-height:38px; background-color: #9da5af;}';
echo '.row2 { max-height:38px; background-color: #3c4b60;}';
echo '.rw { background-color: #3c4b60; display:none; line-height: 38px;}';
echo '.mainTab { border-collapse:collapse; border:1px solid #000000; margin:20px;}';
echo '.table { padding:5px;}';
echo '.headLine { font-size: small; font-weight: bold;}';
echo '.itemBig { font-size: x-small;}';
echo '.itemBiggr { font-size: small;}';
echo '.itemBiggr2 { font-size: small; font-weight: bold;}';
echo '.itemSmall { font-size: xx-small;}';
echo '</style>';

// Zeigt den aktuellen Spieltag an
echo '<table class="mainTab">';
echo '<tr class="rw">';
if ($spt == 0){
echo '<caption class="headLine">'.$response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata[0]->leagueName.' - '.$sptd.'. Spieltag</caption>';}
else {
echo '<caption class="headLine">'.$response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata[0]->leagueName.' - '.$spt.'. Spieltag</caption>';}
echo '</tr>';

// Paar Varibablen zur Farbspielerei
$i = 0;
$col1 = "row1";
$col2 = "row2";

// Damit er mit der richtigen Farbe startet
$color = $col1;

// los mach dich nackig! Nehmen wir dich mal auseinander!
foreach ($response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata as $md)
{
	// 1 und 2 und 3 und ...
   $i++;
   
	// Es lebe die Vielfalt der Zeitformate :(
	$unidate = strtotime("$md->matchDateTime");
	$date = date("d.m.Y - H:i", $unidate);
	$tag = date("w", $unidate);
	if ($tag=="0"){
		$tagde="Sonntag";}
	if ($tag=="1"){
		$tagde="Montag";}
	if ($tag=="2"){
		$tagde="Dienstag";}
	if ($tag=="3"){
		$tagde="Mittwoch";}
	if ($tag=="4"){
		$tagde="Donnerstag";}
	if ($tag=="5"){
		$tagde="Freitag";}
	if ($tag=="6"){
		$tagde="Samstag";}
	
	// Nur zur besseren Übersicht, könnte auch direkt abgefragt werden
	$pic1 = $md->iconUrlTeam1;
   $team1 = $md->nameTeam1;
	$points1 = $md->pointsTeam1;
   $pic2 = $md->iconUrlTeam2;
   $team2 = $md->nameTeam2;
   $points2 = $md->pointsTeam2;
   
   // zur Vermeidung von Fehlermeldungen muss ich sicher gehen das dort Werte eingetragen sind
   if ($md->matchIsFinished == true) {
   		$half1 = $md->matchResults->matchResult[1]->pointsTeam1;
   		$half2 = $md->matchResults->matchResult[1]->pointsTeam2;}
      
// Fangen wir doch mal an den dynamischen Teil auszugeben...
// die 2te bis 8te Zeile werden im Wechsel verschiedenfarbig angezeigt
for($num=2; $num < 7; $num++){
		$color = ($color == $col1) ? $col2 : $col1;
		echo '<tr class="'.$color.'">';}
// Die erste Zeile bekommt nen Bild und ne feste Farbe
if	($i == 1){
		echo '<tr class="high1">';}
// Die letzte Zeile bekommt nen anderes Bild und ne feste Farbe
elseif ($i == 9) {
		echo '<tr class="high2">';}
// Hier gehts dann weiter mit der eigentlichen Tabelle
echo '	<td class=table>';
// Dies einfügen um eigene Vereinslogos zu benutzen, die 2te Zeile dementsprechend dann auskommentieren
//echo '		<img src="./img/liga/'.$team1.'.png"> </td>';
echo '		<img src="'.$pic1.'">';
echo '	</td>';
echo '	<td class="table">';
// Falls das Spiel noch aussteht zeig ich dir nen Bindestrich
if ($points1 == -1 or $points2 == -1){
echo '		<div class="itemBig" align="center">- : -</div>';}
else {
echo '		<div class="itemBig" align="center">'.$points1.' : '.$points2.'</div>';}
// Wenn das Spiel fertig ist zeig ich dir auch noch Halbzeitresultate
if ($md->matchIsFinished == true) {
echo '		<div class="itemSmall" align="center">('.$half1.' : '.$half2.')</div>';}
echo '	</td>';
echo '	<td class="table">';
// Dies einfügen um eigene Vereinslogos zu benutzen, die 2te Zeile dementsprechend dann auskommentieren
//echo '		<img src="./img/liga/'.$team2.'.png"> </td>';
echo '		<img src="'.$pic2.'">';
echo '	</td>';
echo '	<td class="table">';
echo '		<div class="itemBig"> '.$tagde.', '.$date.'</div>';
// Lieblingsverein wird hervorgehoben
if ($team1 == $vn or $team2 == $vn){
echo '		<div class="itemBiggr2"> '.$team1.' - '.$team2.'</div>';}
else {
echo '		<div class="itemBiggr"> '.$team1.' - '.$team2.'</div>';}
echo '	</td>';
echo '</tr>';
// Hier ist die dynamische Ausgabe der Tabelle zuende
}
echo '</table>';
// soll es das gewesen sein?
?>

In dem von dir geposteten Skript sehe ich nichts davon >> Bundesliga Ergebnisse - Seite 4

Sollte quasi Zeile 33 dann bei dir sein. Nach Zeile 32 mit "$response2 = ".

>> Mal davon abgesehen ist dein Skript nicht vollständig geposted. Die erste Zeile fehlt und das halbe Skript…

Grüße,
Chris

Das einzufügende Script muss wie folgt heißen:

$LimitCheckVar = $response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata[0]->nameTeam2;
preg_match('|Maximale Abfrageanzahl von .* Abfragen pro Tag erreicht|', $LimitCheckVar, $matchAbfrageLimit);

if ($matchAbfrageLimit == true) {
    return;
}

Matchdata[0]

Dann gehts…

Hmmm…dann ist das bei dir irgendwie anders :confused: Naja, so lange es jetzt klappt :slight_smile:

Grüße,
Chris

Ich bin kein PHP Profi, aber von anderen Programmiersprachen her muss ich einem Arrayabruf eigentlich sagen aus welcher Zeile ich Daten abrufen will. In diesem Falle die erste Zeile.

Hallo Leute,
wird das projekt hier weiter fortgesetzt? Ich habe mir das mal aus dem Paket Bundesliga v1.rar ausgeschaut bin begeistert davon aber meine Frage ist warum wird die Tabelle nur die erste Halbzeit angezeigt ?
Ist das so gewollt oder kommen die Daten nicht richtig rüber muss da gewartet werden bis zum nächsten Spieltag ?

Mfg
Serverandy

Aktuell herrscht Stillstand :frowning:

Hi!

Ich habe zwar keine Spieltage im Angebot, aber mit einer aktuellen/funktionierenden Tabelle kann ich jetzt dienen :slight_smile: Ergänzt sich also gegenseitig sehr schön :slight_smile:
Fußball Bundesliga - Tabelle (Daten in Array und HTMLBox)

Grüße,
Chris

Einfach Copy&Paste machen, Lieblings-Mannschaft oben eintragen, Skript einmal ausführen (HTMLBox-Variable und Timer werden automatisch angelegt), Variable in sein WebFront verlinken, freuen, hier eine kurze Rückmeldung hinterlassen, fertig :smiley: :cool:

<?
/*** OpenLigaDB (Spielplan und Tabelle) ***/
/***          Skript by cut             ***/
/***      Update v2.4 by Bayaro         ***/
//
//
// Einstellungen
$vn    = 'Bayern München'; // Hier den Lieblingsverein angeben, dieser wird hervorgehoben
$lsc   = 'bl1';            // Den Ligashortcut eingeben. Für die Erste Bundesliga bl1.
$ls    = date("Y");        // Das Jahr der Saison angeben, aktuelles Jahr
$spt   = 0;                // Zur manuellen Anzeige des "aktuellen Spieltags". Bei 0 dynamische Anzeige!
$TimerIntervall = 15;      // Aktualisierung alle X Minuten // Weil die API nicht immer korrekt Datum/Uhrzeit vom nächsten Spiel zurück gibt, erstmal einen Intervall-Timer


// Für Januar bis Juni fängt die Saison im Vorjahr an
if (date("m") <= 6) {
    $ls = $ls -1;
}


// Ich bin ein XML-Webservice auf dem ganz viele Fußballdaten liegen
$location = 'http://www.OpenLigaDB.de/Webservices/Sportsdata.asmx?WSDL';

// paar Einstellungen, beachte mich erstmal nicht
$options = array('encoding'           => 'iso-8859-1',
                 'connection_timeout' => 5,
                 'exceptions'         => 1,
                 );

// Seifenanhänger
$client = new SoapClient($location, $options);

// Welcher Spieltag is denn nun aktuell?
$params        = array('leagueShortcut' => ''.$lsc.'');
$response      = $client->GetCurrentGroupOrderID($params);
$sptd          = $response->GetCurrentGroupOrderIDResult;

// Übergabe-Array an OpdenLigaDB
if ($spt == 0)
    {
    $params2 = array('groupOrderID' => ''.$sptd.'', 'leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');
    }
else
    {
    $params2 = array('groupOrderID' => ''.$spt.'', 'leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');
    }

// und das hier bekommen wir zurück
$response2 = $client->GetMatchdataByGroupLeagueSaison($params2);

// ID von der Lieblingsmannschaft herausfinden
$paramsTeamsByLeageSaison = array('leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');
$TeamsS2 = $client->GetTeamsByLeagueSaison($paramsTeamsByLeageSaison);
foreach ($TeamsS2->GetTeamsByLeagueSaisonResult->Team as $TeamInfoA) {
	if ($TeamInfoA->teamName == $vn) {
	   $teamIDfavorit = $TeamInfoA->teamID;
	}
}

// Datum/Uhrzeit vom nächsten Match der Lieblingsmannschaft abfragen
$paramsTeamNextMatch= array('leagueId' => '848', 'teamId' => ''.$teamIDfavorit.'');   // leagueId ist bei jedem Match zu finden
$nextMatchByTeam1 = $client->GetNextMatchByLeagueTeam($paramsTeamNextMatch);
$NextMatchDateTS = strtotime($nextMatchByTeam1->GetNextMatchByLeagueTeamResult->matchDateTime);
$dateNEXTMATCH = date("d.m.Y - H:i", $NextMatchDateTS);

// Weil die API nicht immer korrekt Datum/Uhrzeit vom nächsten Spiel zurück gibt, erstmal einen Intervall-Timer
IPS_SetScriptTimer($_IPS['SELF'], $TimerIntervall * 60);

// Abfangen, falls die maximale Anzahl der Abfragen, des aktuellen Tages, erreicht wurde
$LimitCheckVar = $response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata[0]->nameTeam2;
preg_match('|Maximale Abfrageanzahl von .* Abfragen pro Tag erreicht|', $LimitCheckVar, $matchAbfrageLimit);

if ($matchAbfrageLimit == true) {
    IPS_LogMessage("OpenLigaDB", "FEHLER! Das Abfragelimit des aktuellen Tages wurde erreicht!");
    return;
}

// Etwas HTML und CSS
$Bundesligaergebnisse   = "";
$Bundesligaergebnisse    = $Bundesligaergebnisse.'<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'<style type="text/css">';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'body { background-color: #27292b; color: #fff; font: normal 14px verdana;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.high { max-height:38px;  background-color: #3c4b60;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.high1 { max-height:38px;  background-color: #3c4b60; background-image: url(./img/Bundesliga/barTopTop.png); background-repeat: repeat-x;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.high2 { max-height:38px;  background-color: #3c4b60; background-image: url(./img/Bundesliga/barBottomBottom.png); background-repeat: repeat-x;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.fav { max-height:38px; background-color: #ced2d7; background-image: url(./img/bgActionBar.png); background-repeat: repeat-x;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.row1 { max-height:38px; background-color: #9da5af;width:100%;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.row2 { max-height:38px; background-color: #3c4b60;width:100%;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.rw { background-color: #3c4b60; display:none; line-height: 38px;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.mainTab { border-collapse:collapse; border:1px solid #000000; margin:1px;width:100%; }';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.mainTag { border-collapse:collapse; border:1px solid #000000; margin:1px;width:100%; }';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.envelopeTab { border-collapse:collapse; border:1px solid #000000; margin:1px;width:90%; }';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.envelopeRow { valign:top; vertical-align:top;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.table { padding:5px;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.headLine { font-size: small; font-weight: bold;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.itemBig { font-size: x-small;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.itemBiggr { font-size: small;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.itemBiggr2 { font-size: small; font-weight: bold;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'.itemSmall { font-size: xx-small;}';
$Bundesligaergebnisse    = $Bundesligaergebnisse.'</style>';


// Platz für Tabelle und Spieltag
$Bundesligaergebnisse = $Bundesligaergebnisse.'<table class="envelopeTab">';
$Bundesligaergebnisse   = $Bundesligaergebnisse.'<tr class="envelopeRow">';
$Bundesligaergebnisse   = $Bundesligaergebnisse.'<td>';


// Zeigt den aktuellen Spieltag an
$Bundesligaergebnisse = $Bundesligaergebnisse. '<table class="mainTag">';
$Bundesligaergebnisse = $Bundesligaergebnisse. '<tr class="rw">';
if ($spt == 0){
$Bundesligaergebnisse = $Bundesligaergebnisse. '<caption class="headLine">'.$response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata[0]->leagueName.' - '.$sptd.'. Spieltag</caption>';}
else {
$Bundesligaergebnisse = $Bundesligaergebnisse. '<caption class="headLine">'.$response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata[0]->leagueName.' - '.$spt.'. Spieltag</caption>';}
$Bundesligaergebnisse = $Bundesligaergebnisse. '</tr>';

// Paar Varibablen zur Farbspielerei
$i = 0;
$col1 = "row1";
$col2 = "row2";

// Damit er mit der richtigen Farbe startet
$color = $col1;

// los mach dich nackig! Nehmen wir dich mal auseinander!
foreach ($response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata as $md)
{
	 $i++;
	 
    // Es lebe die Vielfalt der Zeitformate :(
    $unidate = strtotime("$md->matchDateTime");
    $date = date("d.m.Y - H:i", $unidate);
    $tag = date("w", $unidate);
    if ($tag=="0"){
        $tagde="Sonntag";}
    if ($tag=="1"){
        $tagde="Montag";}
    if ($tag=="2"){
        $tagde="Dienstag";}
    if ($tag=="3"){
        $tagde="Mittwoch";}
    if ($tag=="4"){
        $tagde="Donnerstag";}
    if ($tag=="5"){
        $tagde="Freitag";}
    if ($tag=="6"){
        $tagde="Samstag";}

   // Nur zur besseren Übersicht, könnte auch direkt abgefragt werden
   $pic1 = $md->iconUrlTeam1;
   $team1 = $md->nameTeam1;
   $points1 = $md->pointsTeam1;
   $pic2 = $md->iconUrlTeam2;
   $team2 = $md->nameTeam2;
   $points2 = $md->pointsTeam2;

   // zur Vermeidung von Fehlermeldungen muss ich sicher gehen das dort Werte eingetragen sind
	if ($md->matchIsFinished == true) {
       if ((is_array($md->matchResults->matchResult)) AND ($md->matchResults->matchResult[0]->resultName == "Endergebnis")) {
            $points1 = $md->matchResults->matchResult[0]->pointsTeam1;
            $points2 = $md->matchResults->matchResult[0]->pointsTeam2;
        }
        elseif ((is_array($md->matchResults->matchResult)) AND ($md->matchResults->matchResult[1]->resultName == "Endergebnis")) {
            $points1 = $md->matchResults->matchResult[1]->pointsTeam1;
            $points2 = $md->matchResults->matchResult[1]->pointsTeam2;
        }
        else {
            $points1 = $md->matchResults->matchResult->pointsTeam1;
            $points2 = $md->matchResults->matchResult->pointsTeam2;
        }
   }

   if ($md->matchIsFinished == true) {
       if ((is_array($md->matchResults->matchResult)) AND ($md->matchResults->matchResult[0]->resultName == "Halbzeitergebnis")) {
            $half1 = $md->matchResults->matchResult[0]->pointsTeam1;
          $half2 = $md->matchResults->matchResult[0]->pointsTeam2;
        }
        elseif ((is_array($md->matchResults->matchResult)) AND ($md->matchResults->matchResult[1]->resultName == "Halbzeitergebnis")) {
            $half1 = $md->matchResults->matchResult[1]->pointsTeam1;
          $half2 = $md->matchResults->matchResult[1]->pointsTeam2;
        }
        else {
            $half1 = $md->matchResults->matchResult->pointsTeam1;
            $half2 = $md->matchResults->matchResult->pointsTeam2;
        }
   }

// Fangen wir doch mal an den dynamischen Teil auszugeben...
// die 2te bis 8te Zeile werden im Wechsel verschiedenfarbig angezeigt
for($num=2; $num < 7; $num++){
        $color = ($color == $col1) ? $col2 : $col1;
        $Bundesligaergebnisse = $Bundesligaergebnisse. '<tr class="'.$color.'">';}
// Die erste Zeile bekommt nen Bild und ne feste Farbe
if    ($i == 1){
        $Bundesligaergebnisse = $Bundesligaergebnisse. '<tr class="high1">';}
// Die letzte Zeile bekommt nen anderes Bild und ne feste Farbe
elseif ($i == 9) {
        $Bundesligaergebnisse = $Bundesligaergebnisse. '<tr class="high2">';}
// Hier gehts dann weiter mit der eigentlichen Tabelle
$Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class=table>';
// Dies einfügen um eigene Vereinslogos zu benutzen, die 2te Zeile dementsprechend dann auskommentieren
//$Bundesligaergebnisse = $Bundesligaergebnisse. '        <img src="./img/liga/'.$team1.'.png"> </td>';
$Bundesligaergebnisse = $Bundesligaergebnisse. '        <img src="'.$pic1.'" style="width: 20px; height: 20px">';
$Bundesligaergebnisse = $Bundesligaergebnisse. '    </td>';
$Bundesligaergebnisse = $Bundesligaergebnisse. '    <td>';
// Falls das Spiel noch aussteht zeig ich dir nen Bindestrich
if ($points1 == -1 or $points2 == -1){
$Bundesligaergebnisse = $Bundesligaergebnisse. '        <div class="itemBig" align="center">- : -</div>';}
else {
$Bundesligaergebnisse = $Bundesligaergebnisse. '        <div class="itemBig" align="center">'.$points1.' : '.$points2.'</div>';}
// Wenn das Spiel fertig ist zeig ich dir auch noch Halbzeitresultate
if ($md->matchIsFinished == true) {
$Bundesligaergebnisse = $Bundesligaergebnisse. '        <div class="itemSmall" align="center">('.$half1.' : '.$half2.')</div>';}
$Bundesligaergebnisse = $Bundesligaergebnisse. '    </td>';
$Bundesligaergebnisse = $Bundesligaergebnisse. '    <td>';
// Dies einfügen um eigene Vereinslogos zu benutzen, die 2te Zeile dementsprechend dann auskommentieren
//$Bundesligaergebnisse = $Bundesligaergebnisse. '        <img src="./img/liga/'.$team2.'.png"> </td>';
$Bundesligaergebnisse = $Bundesligaergebnisse. '        <img src="'.$pic2.'" style="width: 20px; height: 20px">';
$Bundesligaergebnisse = $Bundesligaergebnisse. '    </td>';
$Bundesligaergebnisse = $Bundesligaergebnisse. '    <td>';
$Bundesligaergebnisse = $Bundesligaergebnisse. '        <div class="itemBig"> '.$tagde.', '.$date.'</div>';
// Lieblingsverein wird hervorgehoben
if ($team1 == $vn or $team2 == $vn){
$Bundesligaergebnisse = $Bundesligaergebnisse. '        <div class="itemBiggr2"> '.$team1.' - '.$team2.'</div>';
}
else {
$Bundesligaergebnisse = $Bundesligaergebnisse. '        <div class="itemBiggr"> '.$team1.' - '.$team2.'</div>';}
$Bundesligaergebnisse = $Bundesligaergebnisse. '    </td>';
$Bundesligaergebnisse = $Bundesligaergebnisse. '</tr>';
// Hier ist die dynamische Ausgabe der Tabelle zuende
}
$Bundesligaergebnisse = $Bundesligaergebnisse. '</table>';
// soll es das gewesen sein?

$naechstesSpiel = $dateNEXTMATCH;
$Bundesligaergebnisse = $Bundesligaergebnisse."<br/><br/>";
$Bundesligaergebnisse = $Bundesligaergebnisse."Nächstes Spiel von ".$vn.": ";
$Bundesligaergebnisse = $Bundesligaergebnisse.$naechstesSpiel." Uhr";
$Bundesligaergebnisse   = $Bundesligaergebnisse.'</td>';


// und ab hier nun die Tabelle
$Bundesligaergebnisse   = $Bundesligaergebnisse.'<td>';

// Welchen Spieltag haben wir gerade?
$client = new SoapClient($location, $options);
$params = array('leagueShortcut' => ''.$lsc.'');
$response = $client->GetCurrentGroupOrderID($params);
$sptdt = $response->GetCurrentGroupOrderIDResult;

// Starten wir mal die anfrage, um Daten zu sammeln
$params4 = array('groupOrderID' => ''.$sptdt.'', 'leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');
$response4 = $client->GetMatchdataByGroupLeagueSaison($params4);
if ($response4->GetMatchdataByGroupLeagueSaisonResult->Matchdata[8]->matchIsFinished == true)
    {
    $i = 0;
    while ($i < $sptdt)
        {
        $i++;
        $sp = $sptdt;
        $params2 = array('groupOrderID' => ''.$i.'', 'leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');
        $response2 = $client->GetMatchdataByGroupLeagueSaison($params2);
       foreach ($response2->GetMatchdataByGroupLeagueSaisonResult->Matchdata as $tm)
            {
            if ((is_array($tm->matchResults->matchResult)) AND ($tm->matchResults->matchResult[0]->resultName == "Endergebnis")) {
                 $tm1 = $tm->matchResults->matchResult[0]->pointsTeam1;
                $tm2 = $tm->matchResults->matchResult[0]->pointsTeam2;
             }
             elseif ((is_array($tm->matchResults->matchResult)) AND ($tm->matchResults->matchResult[1]->resultName == "Endergebnis")) {
                 $tm1 = $tm->matchResults->matchResult[1]->pointsTeam1;
                $tm2 = $tm->matchResults->matchResult[1]->pointsTeam2;
             }
             else {
                 $tm1 = $tm->matchResults->matchResult->pointsTeam1;
                $tm2 = $tm->matchResults->matchResult->pointsTeam2;
             }
            if ($tm1 > $tm2)
                {
                $win = 1;
                $win2 = 0;
                $lost = 0;
                $lost2 = 1;
                $draw = 0;
                }
                elseif ($tm1 == $tm2)
                    {
                    $draw = 1;
                    $win = 0;
                    $win2 = 0;
                    $lost = 0;
                    $lost2 = 0;
                    }
                    else
                        {
                        $win = 0;
                        $win2 = 1;
                        $lost = 1;
                        $lost2 = 0;
                        $draw = 0;
                        }

                        if ((is_array($tm->matchResults->matchResult)) AND ($tm->matchResults->matchResult[0]->resultName == "Endergebnis")) {
                                    $toreX = $tm->matchResults->matchResult[0]->pointsTeam1;
                                   $gtoreX = $tm->matchResults->matchResult[0]->pointsTeam2;
                                }
                                elseif ((is_array($tm->matchResults->matchResult)) AND ($tm->matchResults->matchResult[1]->resultName == "Endergebnis")) {
                                    $toreX = $tm->matchResults->matchResult[1]->pointsTeam1;
                                   $gtoreX = $tm->matchResults->matchResult[1]->pointsTeam2;
                                }
                                else {
                                    $toreX = $tm->matchResults->matchResult->pointsTeam1;
                                   $gtoreX = $tm->matchResults->matchResult->pointsTeam2;
                                }

                        $t {$tm->idTeam1}{$i} = array(
                            "Flag"=>"$tm->iconUrlTeam1",
                            "Spielt"=>"$tm->groupOrderID",
                            "Team"=>"$tm->nameTeam1",
                           "Tore"=>"$toreX",
                           "gTore"=>"$gtoreX",
                           "win"=>"$win",
                           "lost"=>"$lost",
                           "draw"=>"$draw");

                        $t {$tm->idTeam2}{$i} = array(
                            "Flag"=>"$tm->iconUrlTeam2",
                            "Spielt"=>"$tm->groupOrderID",
                            "Team"=>"$tm->nameTeam2",
                           "Tore"=>"$gtoreX",
                           "gTore"=>"$toreX",
                           "win"=>"$win2",
                           "lost"=>"$lost2",
                           "draw"=>"$draw");
            }
        }
    }
    else
        {
        $p = 0;
        $sp = $sptdt - 1;
        while ($p < $sp)
            {
            $p++;
            $params5 = array('groupOrderID' => ''.$p.'', 'leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');
            $response5 = $client->GetMatchdataByGroupLeagueSaison($params5);
           foreach ($response5->GetMatchdataByGroupLeagueSaisonResult->Matchdata as $tm)
                {
                if ((is_array($tm->matchResults->matchResult)) AND ($tm->matchResults->matchResult[0]->resultName == "Endergebnis")) {
                     $tm1 = $tm->matchResults->matchResult[0]->pointsTeam1;
                    $tm2 = $tm->matchResults->matchResult[0]->pointsTeam2;
                  }
                  elseif ((is_array($tm->matchResults->matchResult)) AND ($tm->matchResults->matchResult[1]->resultName == "Endergebnis")) {
                     $tm1 = $tm->matchResults->matchResult[1]->pointsTeam1;
                    $tm2 = $tm->matchResults->matchResult[1]->pointsTeam2;
                  }
                  else {
                     $tm1 = $tm->matchResults->matchResult->pointsTeam1;
                    $tm2 = $tm->matchResults->matchResult->pointsTeam2;
                  }
                 if ($tm1 > $tm2)
                    {
                    $win = 1;
                    $win2 = 0;
                    $lost = 0;
                    $lost2 = 1;
                    $draw = 0;
                    }
                    elseif ($tm1 == $tm2)
                        {
                        $draw = 1;
                        $win = 0;
                        $win2 = 0;
                        $lost = 0;
                        $lost2 = 0;
                        }
                        else
                            {
                            $win = 0;
                            $win2 = 1;
                            $lost = 1;
                            $lost2 = 0;
                            $draw = 0;
                            }

                            if ((is_array($tm->matchResults->matchResult)) AND ($tm->matchResults->matchResult[0]->resultName == "Endergebnis")) {
                                           $toreX = $tm->matchResults->matchResult[0]->pointsTeam1;
                                        $gtoreX = $tm->matchResults->matchResult[0]->pointsTeam2;
                                    }
                                    elseif ((is_array($tm->matchResults->matchResult)) AND ($tm->matchResults->matchResult[1]->resultName == "Endergebnis")) {
                                           $toreX = $tm->matchResults->matchResult[1]->pointsTeam1;
                                        $gtoreX = $tm->matchResults->matchResult[1]->pointsTeam2;
                                    }
                                    else {
                                      $toreX = $tm->matchResults->matchResult->pointsTeam1;
                                        $gtoreX = $tm->matchResults->matchResult->pointsTeam2;
                                    }

                            $t {$tm->idTeam1}{$p} = array(
                                "Flag"=>"$tm->iconUrlTeam1",
                                "Spt"=>"$tm->groupOrderID",
                                "Team"=>"$tm->nameTeam1",
                                "Tore"=>"$toreX",
                                          "gTore"=>"$gtoreX",
                                "win"=>"$win",
                                "lost"=>"$lost",
                                "draw"=>"$draw");

                            $t {$tm->idTeam2}{$p} = array(
                               "Flag"=>"$tm->iconUrlTeam2",
                                "Spt"=>"$tm->groupOrderID",
                                "Team"=>"$tm->nameTeam2",
                               "Tore"=>"$gtoreX",
                               "gTore"=>"$toreX",
                               "win"=>"$win2",
                               "lost"=>"$lost2",
                               "draw"=>"$draw");
                }
            }
        }

$params6 = array('leagueShortcut' => ''.$lsc.'', 'leagueSaison' => ''.$ls.'');
$response6 = $client->GetTeamsByLeagueSaison($params6);
$f = 0;

foreach ($response6->GetTeamsByLeagueSaisonResult->Team as $tms)
    {
    $f++;
    $wi = 0;
    $lo = 0;
    $dr = 0;
    $tr = 0;
    $gtr = 0;
    for($count = 1; $count <= $sp; $count++)
        {
        $count;
        // Siege zusammzählen
        ${'wi'.$count} = $t[$tms->teamID][$count]['win'];
        $wi += ${'wi'.$count};
        // Niederlagen zusammenzählen
        ${'lo'.$count} = $t[$tms->teamID][$count]['lost'];
        $lo += ${'lo'.$count};
        // Unendschieden zusammenzählen
        ${'dr'.$count} = $t[$tms->teamID][$count]['draw'];
        $dr += ${'dr'.$count};
        // Tore zusammenzählen
        ${'tr'.$count} = $t[$tms->teamID][$count]['Tore'];
        $tr += ${'tr'.$count};
        // Gegentore zusammenzählen
        ${'gtr'.$count} = $t[$tms->teamID][$count]['gTore'];
        $gtr += ${'gtr'.$count};
          }
    // Tordifferenz berechnen
    $td = $tr-$gtr;
    //Punkte zusammenrechnen
    $pt = $wi*3+$dr*1;
    $sp = $wi+$dr+$lo;

    $fl = $t[$tms->teamID]['1']['Flag'];
    $te = $t[$tms->teamID]['1']['Team'];

    $erg{$f} = array(
        "Flag"=>"$fl",
        "Team"=>"$te",
        "Punkte"=>"$pt",
       "Spiele"=>"$sp",
       "TD"=>"$td",
       "Tore"=>"$tr",
       "gTore"=>"$gtr",
       "win"=>"$wi",
       "lost"=>"$dr",
       "draw"=>"$lo");
        }

        foreach ($erg as $nr => $inhalt)
            {
            $Punkte[$nr]    = $inhalt['Punkte'] ;
            $Spiele[$nr]    = $inhalt['Spiele'] ;
           $TorD[$nr]        = $inhalt['TD'] ;
           $Tor[$nr]      = $inhalt['Tore'] ;
            }

    // Hier geht die Tabelle los
   $Bundesligaergebnisse = $Bundesligaergebnisse. '<table class="mainTab">';
   $Bundesligaergebnisse = $Bundesligaergebnisse. '<tr class="rw">';
   $Bundesligaergebnisse = $Bundesligaergebnisse. '<caption class="headLine">Tabelle</caption>';
   $Bundesligaergebnisse = $Bundesligaergebnisse. '</tr>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '<tr class="high1">';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr" align="center"> Pos. </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr"> </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr"> Club</td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr" align="center"> Pkt. </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr" align="center"> Sp. </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr" align="center"> TD </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr" align="center"> Tore </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr" align="center"> S </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr" align="center"> N </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBiggr" align="center"> U </td>';
    $Bundesligaergebnisse = $Bundesligaergebnisse. '</tr>';

    // Paar Varibablen zur Farbspielerei
    $col3 = "row2";
    $col4 = "row1";

    // Damit er mit der richtigen Farbe startet
    $color = $col3;

    // Sortieren wir mal alles vernünftig
   array_multisort($Punkte, SORT_DESC, $Spiele, SORT_DESC, $TorD, SORT_DESC, $Tor, SORT_DESC, $erg);
    $g = 0;
    foreach ($erg as $tab)
        {
        // Hier starten wir die dynamische Tabellenausgabe
        $g++;
        // die 1te bis 17te Zeile werden im Wechsel verschiedenfarbig angezeigt
        for($num=1; $num < 18; $num++){
        $color = ($color == $col3) ? $col4 : $col3;
        $Bundesligaergebnisse = $Bundesligaergebnisse. '<tr class="'.$color.'">';}
        // Die 18. Zeile bekommt nen Bild und ne feste Farbe
        if    ($g == 18){
        $Bundesligaergebnisse = $Bundesligaergebnisse. '<tr class="high2">';}
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="Pos" align="center"> '.$g.' </td>';
        // Dies einfügen um eigene Vereinslogos zu benutzen, die 2te Zeile dementsprechend dann auskommentieren
        //$Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBig" align="center"> <img src="./img/liga/'.$tab['Team'].'.png"> </td>';
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class ="itemBig align="center"> <img src="'.$tab['Flag'].'" style="width: 20px; height: 20px"> </td>';
        if ($tab['Team'] == $vn){
            $Bundesligaergebnisse = $Bundesligaergebnisse. '<td class="fav"> '.$tab['Team'].'</td>';}
        else {
            $Bundesligaergebnisse = $Bundesligaergebnisse. '<td class="itemBig"> '.$tab['Team'].'</td>';}
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBig" align="center"> '.$tab['Punkte'].' </td>';
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBig" align="center"> '.$tab['Spiele'].' </td>';
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBig" align="center"> '.$tab['TD'].' </td>';
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBig" align="center"> '.$tab['Tore'].' : '.$tab['gTore'].' </td>';
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBig" align="center"> '.$tab['win'].' </td>';
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBig" align="center"> '.$tab['draw'].' </td>';
        $Bundesligaergebnisse = $Bundesligaergebnisse. '    <td class="itemBig" align="center"> '.$tab['lost'].' </td>';
        $Bundesligaergebnisse = $Bundesligaergebnisse. '</tr>';
        }
        // Hier ist die dynamische Ausgabe der Tabelle zuende
        $Bundesligaergebnisse = $Bundesligaergebnisse. '</table>';



// Und nun alles schliessen
$Bundesligaergebnisse   = $Bundesligaergebnisse.'</td>';
$Bundesligaergebnisse   = $Bundesligaergebnisse.'</tr></table>';


// Variable erstellen, falls nicht vorhanden, und den Inhalt setzen
$HTMLBox_VarID = CreateVariableByName($_IPS['SELF'], "OpenLigaDB-Bundesliga HTMLBox", 3, "~HTMLBox", "");
SetValueString($HTMLBox_VarID, $Bundesligaergebnisse);



function SetTimerByName($id, $name, $ts) {
        $eid = @IPS_GetEventIDByName($name, $id);
        if($eid === false)
        {
            $eid = IPS_CreateEvent(1);
            IPS_SetParent($eid, $id);
            IPS_SetName($eid, $name);
            IPS_SetInfo($eid, "this timer was created by script #".$_IPS['SELF']);
            IPS_SetEventScript($eid, $id);
            IPS_SetEventActive($eid, true);
        }

        $dt = date_parse($ts);

        IPS_SetEventCyclic($eid, 1, 0, 0, 0, 0, 0);
        IPS_SetEventCyclicDateFrom($eid, $dt["day"], $dt["month"], $dt["year"]);
        IPS_SetEventCyclicTimeFrom($eid, $dt["hour"], $dt["minute"], 0);
        return $eid;
}


function CreateVariableByName($ParentID, $VarName, $VarTyp, $VarProfile = "", $VarActionScript = "") {
    $VarID = @IPS_GetVariableIDByName($VarName, $ParentID);
   if($VarID === false) {
        $VarID = IPS_CreateVariable($VarTyp);
      IPS_SetParent($VarID, $ParentID);
      IPS_SetName($VarID, $VarName);
      IPS_SetInfo($VarID, "This variable was created by script #".$_IPS["SELF"]);
      if($VarProfile !== "") {
            IPS_SetVariableCustomProfile($VarID, $VarProfile);
        }
        if($VarActionScript !== "") {
            IPS_SetVariableCustomAction($VarID, $VarActionScript);
        }
    }
   return $VarID;
}
?>

UPDATE v2.1 (18.09.2015)
>> FIX # Die 3. Liga funktioniert jetzt auch (allerdings sind ein paar Vereins-Logos nicht vorhanden, da kann ich nichts machen)

UPDATE v2.2 (18.09.2015)
>> FIX # Halbzeitergebnisse wurden nach dem Spiel nicht korrekt angezeigt
>> NEU # Timer für Halbzeitergebnisse (nur 1. und 2. Liga)

UPDATE v2.3 (19.09.2015 - 16.40 Uhr)
>> FIX # Halbzeitergebnis wurde als Endergebnis ausgegeben
>> FIX # Timer auf Intervall geändert, weil die API den Zeitpunkt vom nächsten Spiel nicht korrekt zurück gibt

UPDATE v2.4 (20.09.2015 - 21.54 Uhr)
>> FIX # Nach dem letzten Spiel vom Spieltag kam es zu einem Fehler im Skript
>> FIX # Datum und Uhrzeit vom nächsten Spiel der Lieblingsmannschaft umgebaut, da stand nach dem Spiel Mist drin

[b]2DO:
>> Die Tabelle wird erst nach dem letzten Spiel eines Spieltages aktualisiert. Hier fehlt eine Option, damit man wählen kann zwischen Aktualisierung nach dem Spieltag und Aktualisierung nach jedem Spiel.[/b]

WICHTIG >> Bei der Lieblingsmannschaft muss 1 zu 1 der Verein so eingetragen werden, wie er in Spielplan und Tabelle ausgegeben wird, sonst kommt ein Fehler. Also alle „.“ oder Groß-Klein beachten!

Viel Spaß und Grüße,
Chris

PS: Wer möchte kann trotzdem meine im Post davor erwähnte Tabelle verwenden, sonst war die Arbeit ja umsonst :smiley: Ich habe beide kombiniert. Dann habe ich einmal den Spieltag + Tabelle pro Spieltag und dann nochmal eine Live-Tabelle.

Moin Moin Bayaro,

solange ich ein Team aus der 1. Bundesliga mag ist alles gut , aber meine Band spielt 3. Liga .

Blau Weiße Grüße

  1. FC Magdeburg
  1. Liga? Was es nicht alles gibt :smiley: :wink: Ging das denn früher mit der 3. Liga? Die Stellen die den Kram betrifft, da hab ich nichts geändert…

Edit: 1. und 2. Liga passt…bei der 3.Liga würde es an sich auch gehen (Daten sind verfügbar), aber bei Liga 1 und 2 wird an einer Stelle an Array zurückgegeben und bei Liga 3 kein Array…müsste man umbauen und das Skript „erkennen“ lassen, wenn „bl3“ gewählt wurde… An sich möglich… Oder einfach 4 Zeilen ändern und das Skript rein für Liga 3 verwenden :smiley:

Grüße,
Chris

Früher waren wir nicht in der 3. Liga :slight_smile:

So, jetzt läuft die 3. Liga bei mir, aber die Vereins-Logos sind teilweise in der falschen Größe und manche sind gar nicht vorhanden :rolleyes:

Beispiel: https://upload.wikimedia.org/wikipedia/de/thumb/d/d6/Stuttgarter_Kickers_Logo.svg/120px-Stuttgarter_Kickers_Logo.svg.png

Also müssen irgendwo neue Logos her grrr

Grüße,
Chris

Danke Chris ,
Ich fahr jetzt ins Stadion und gucke es erstmal live .

Kannst du die Änderung online stellen ?

UPDATE v2.1
>> FIX # Die 3. Liga funktioniert jetzt auch (allerdings sind ein paar Vereins-Logos nicht vorhanden, da kann ich nichts machen)

Bitte die neue Version 2.1 aus diesem Post verwenden:
Bundesliga Ergebnisse - Seite 5

Grüße,
Chris

Danke Chris ,

Aktuell steht es 1:1 :slight_smile:

Mal sehen, ob nach dem Spiel das Ergebnis im OpenLigaDB Spielplan zu sehen ist… So wirklich verstehe ich den Teil im Skript noch nicht :smiley:
Aber theoretisch sollte es, mit meinen Timern, 10 Minuten nach Spielende sich selbst aktualisieren und die Ergebnisse anzeigen… Schau ma mal :smiley:

Grüße,
Chris

UPDATE v2.2
>> FIX # Halbzeitergebnisse wurden nach dem Spiel nicht korrekt angezeigt
>> NEU # Timer für Halbzeitergebnisse (nur 1. und 2. Liga)

Skript findet ihr HIER

@Frauenhofer: Ich hoffe für dich, dass du Fan von Aalen bist :smiley: :smiley:

Grüße,
Chris

Ahhhhhhhhhhhh :((((((