Problem mit PHP und Json

  • Hallo,


    Ich hab die Zeilen

    PHP
    [{"id":"1","ip":"1.eu.game.ets2mp.com","port":"15698","name":"Europe #1","shortname":"EU #1","online":"1","players":"2691"},{"id":"3","ip":"1.us.game.ets2mp.com","port":"15698","name":"United states #1","shortname":"US #1","online":"1","players":"258"}]


    wie kann ich die Zeilen auslesen
    Ich hab es schon so versucht

    PHP
    $api = new TruckMPApi();
    
    
    $servers = $api->GetServers();
    echo "<br>".$servers[1]['online']."<br>";


    und

    PHP
    $api = new TruckMPApi();
    
    
    $servers = $api->GetServers();
    echo "<br>".$servers['online']."<br>";


    Kein Resultat, kennt sich einer da zufällig aus?

    Mit Freundlichen Grüßen
    Whitetiiger aka. Kaito-sensei
    P.s. Alle mit #IRONIE bestätigten Sätze von mir, sind als Ironie anzusehen.

  • oh sry hab es nicht erwähnt, in der class wird es schon decodet.


    Mit Freundlichen Grüßen
    Whitetiiger aka. Kaito-sensei
    P.s. Alle mit #IRONIE bestätigten Sätze von mir, sind als Ironie anzusehen.

  • Danke xGreekz7x,
    Jetzt geht es
    Für alle die auch so ein Problem haben



    Mit Freundlichen Grüßen
    Whitetiiger aka. Kaito-sensei
    P.s. Alle mit #IRONIE bestätigten Sätze von mir, sind als Ironie anzusehen.

  • Beitrag von Klemmlampe ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
    • Eine Klasse würde ich nur verwenden, wenn diese auch Sinn macht.
    • Eine API ist dies schonmal garnicht.
    • Der font-Tag ist deprecated. Verwende stattdessen CSS. Da auch inline-CSS aus der Mode ist, habe ich ein span-Tag mit einem class-Attribut versehen.
    • <br> zu verwenden, bevor man irgendetwas ausgibt, empfinde ich für sinnlos. Wenn du die Ausgabe nach unten rücken möchtest, dann verwende CSSs margin.
    • Tipp: Entscheide dich für entweder Single-Quotes oder Double-Quotes in PHP und setze diese Anwendung gewiss um, sonst bekommst du irgendwann Probleme mit Kontextwechseln.
    • Behandle Fehler in deinem Quellcode sinnvoll. Einfach Fehler zu unterdrücken und ihnen weiter kein Gehör zu schenken, das ist nicht zielführend.


    Wie ich das Vorhaben umgesetzt hätte:



    CSS
    .online {
    	color: green;
    }
    
    
    .offline {
    	color: red;
    }
  • Vielen dank für deine Hilfe.
    Leider klappt dies auch nicht mit dein Code.


    Er bleibt bereits bei der ersten If abfrage hängen.

    PHP
    if(($json = @file_get_contents("http://api.ets2mp.com/servers/")) !== FALSE) {


    Dann solltest du wohl das error_reporting einschalten, Errors anzeigen lassen und die Unterdrückung der Fehler aufheben (@-Zeichen vor file_get_contents() entfernen), um zu debuggen:


    PHP
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
  • Beitrag von whitetiiger ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.