[PHP] Steam Inventory

  • Hey,


    gibt es vielleicht den einen oder anderen unter euch, welcher schonmal mit der Steam API gearbeitet hat?
    Ich google gerade vergebens danach, das Steam-Inventory eines Nutzers zu bekommen.
    Ich habe viele Seiten gefunden, welche mir sagen, dass ich es mit json probieren sollte, allerdings habe ich
    dennoch keine Ahnung, wie ich das ganze in ein passendes Array bekomme. Der Link zu der Seite ist folgender:


    http://steamcommunity.com/id/KevinL1804/inventory/json/730/2


    Aus dieser Seite soll ich die Daten filtern können.
    Ich bitte dringend um Hilfe. Es geht um eine Internetseite, welche Stats auflistet etc.

  • mal grob ausm Kopf:

    PHP
    $content = file_get_contents('http://steamcommunity.com/id/KevinL1804/inventory/json/730/2');
    echo '<pre>';
    var_dump(json_decode($content));
    echo '</pre>';


    not sure. try it.

  • bspw:

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • PHP
    $steamData = file_get_contents('http://steamcommunity.com/id/KevinL1804/inventory/json/730/2');
    $data = json_decode($steamData, true);
    
    
    $items = $data['rgInventory'];
    
    
    foreach($items as $key => $item){
        echo $data['rgDescriptions'][$item['classid'] . '_' . $item['instanceid']]['name'].'<br />';
    }


    So gibst du die Namen jeglicher Items in dem Inventar aus.
    unter rgDescriptions findest du noch mehr Daten, einfach rum probieren.


    Gruß
    Mythen

  • Noch eine Frage: Ich habe das ganze nun so, wie ich es haben möchte.
    Wie kann ich nun den Median_Price aus dem Market abfragen?
    Habe das ganze so gemacht:


    Allerdings bekomme ich folgende Fehler:

    PHP
    Warning: file_get_contents(http://steamcommunity.com/market/priceoverview/?currency=3&appid=730&market_hash_name=Chroma Case): failed to open stream: HTTP request failed! HTTP/1.0 500 Internal Server Error in D:\XAMPP\htdocs\steam\inventar.php on line 40
    
    
    Notice: Trying to get property of non-object in D:\XAMPP\htdocs\steam\inventar.php on line 43
    Fehler

  • Durch das "@"-Zeichen in Zeile 6 unterdrückst du einen Fehler der kommt, weil dein Kandidat eine "Goldene "Operation Vanguard"-Verdienstmünze" besitzt, welche nicht handelbar ist.


    Dein eigentliches Problem wird dadurch gelöst, dass der "market_hash_name" Leerzeichen besitzt, welche in einem Browser zu "% 20" (ohne das Leerzeichen) umgewandelt wird. Bei deinem Code muss dies manuell geschehen.


    // edit: % 20 ohne Leerzeichen wird automatisch zu einem Leerzeichen...

  • Beitrag von Henry2000 ()

    Dieser Beitrag wurde von shoxinat0r gelöscht ().
  • Beitrag von Henry2000 ()

    Dieser Beitrag wurde von shoxinat0r gelöscht ().
  • Beitrag von Henry2000 ()

    Dieser Beitrag wurde von shoxinat0r gelöscht ().
  • Beitrag von Henry2000 ()

    Dieser Beitrag wurde von shoxinat0r gelöscht ().