1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

[php] mehrdimensionales json array

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von soma-web, 06.04.2012.

  1. soma-web, 06.04.2012 #1
    soma-web

    soma-web Threadstarter App-Anbieter (kostenpfl.)

    Beiträge:
    146
    Erhaltene Danke:
    18
    Registriert seit:
    06.07.2011
    Hi AH Community, ich weiß eigtl sollten hier nur Android prog. Fragen rein, aber ihr kennt euch doch super mit Datenbankschnittstellen für Android aus!

    Ich versuche mich gerade an dem auslesen einer online db von meinem Handy aus (Android), dabei hab ich aber ein problem der Datenübergabe.
    Auf dem Server muss ich per php auf die DB zugreifen und dem Handy dann per JSON Array die Daten übergeben.

    Zum Konkreten Beispiel ich habe 3 Tabellen

    Location: id; Name; Koordinaten,...
    Location_Angebote: id; Location_id; Produkt; Preis
    Location_Oeffnungszeiten: id; Location_id; Start; Ende

    Und ich hätte gerne eine Ausgabe in der Art von: (achtung pseudo..)


    Code:
    [{"id":"1",
    "Name":"Zum Goldenen Wirt",
    "Koordinate":"34.554210",
    "Angebote":[
            "Kloß mit Soß":"8,90€"
            "Brokkoli mit Wirsinggemüse und Spinat":"9.85€"
    ]
    "Oeffnugszeiten":[
    ....
    ]}]
    Hab auch schon ein bisschen mit arrays gespielt, aber so wirklich schlau daraus werde ich nicht wie ich das am besten mache: Hier mal einer meiner Versuche, aber der liefert auch nicht das gewünschte ergebnis:
    Code:
    $query=mysql_query("select Orte.Name,Produkte.id,Produkte.Produkt,Produkte.Preis from Orte,Produkte where Orte.id=Produkte.Ort_Id");
    	 
    	$quiz = array();
    	while ($row = mysql_fetch_assoc($query)) {   
    		if (!isset($quiz[$row['Name']])) {
    			$quiz[$row['Name']] = array(
    			'Eigenschaften' => $row['Produkt']
    			,'Produkt' => $row['Produkt']
    			, 'Preis' => $row['Preis']
    			);
    			}
       $quiz[$row['Name']]['Preis'] = $row['Preis'];
       $quiz[$row['Name']]['Produkt'] = $row['Produkt'];
    		
    }
    //print(json_encode(array('aha' => $quiz)));
    print(json_encode($quiz));
    	mysql_close(); 
    Wie stell ich das am besten an, bin mit php und DBs nicht so bewandert.
    Hab ich einen Logikfehler drinnen?

    Wäre um jeden Code(PseudoCode) Schnipsel dankbar, vorallem mit dem Problem der 3 Tabellenabfragen und der JSON Formatierung. Wie Joine ich die am besten?

    1000 Dank an euch!

    Grüße Soma
     

Diese Seite empfehlen