Cheeese: JSON PHP File erstellen

Hallo zusammen,

ich habe gerade ein Projekt bei dem ich Daten von meiner MySQL Datenbank auf meinem iPhone empfangen möchte. Dazu brauche ich aber ein php Script, welches mir die Daten für eine JSON Abfrage bereitstellt.

Am ende soll das ganze wenn ich den link (zb. http://meineSeite.de/meinJSONscript.php) in Firefox eingebe so aussehen:

{"wetterstation":[{"location":"indoor","celsius":"22.5"}]}

Die in diesem Beispiel 22.5 sollen dann meine Daten aus der Datenbank sein.
Ich habe schon ein php script für die Anzeige auf einer Homepage, jetzt fehlt mir aber noch dieses. Ich weiß aber nicht genau wie das mit application/json als content-type abläuft.

Kann mir da einer vielleicht helfen?

  1. Lieber Cheeese,

    {"wetterstation":[{"location":"indoor","celsius":"22.5"}]}
    [...] Ich weiß aber nicht genau wie das mit application/json als content-type abläuft.

    header('content-type: application/json');  
    echo json_encode($mein_daten_array_aus_der_db);  
    exit;
    

    Liebe Grüße,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
  2. Hallo,

    {"wetterstation":[{"location":"indoor","celsius":"22.5"}]}

    Diese Datenstruktur lässt sich meines Wissens mit einem stdObject und einen Array erzeugen. Serialisieren zu JSON dann mit json_encode.

    <?php  
    header('Content-Type: application/json');  
    $obj = new stdObject();  
    $wetterstation = new stdObject();  
    $wetterstation->location = 'indoor';  
    $wetterstation->celsius = 22.5;  
    $obj->wetterstation = array(wetterstation);  
    echo json_encode($obj);  
    ?>
    

    (ungetestet)

    Ich weiß aber nicht genau wie das mit application/json als content-type abläuft.

    Einfach den HTTP-Header »Content-Type« mit header() setzen.

    Grüße,
    Mathias

  3. Hallo zusammen,

    danke für eure antworten, hat super funktioniert :-)

    Gruß