PHP Formular be- und verarbeiten?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • PHP Formular be- und verarbeiten?

    Hallo Leute!

    Ich wollte mal wissen, ob es möglich ist, ein PHP Formular zu laden, zu bearbeiten und aus längeren Strings wie z.B.

    Quellcode

    1. "AT0012":{"d":1300201200,"v":112,"c":46848},"AT0103":{"d":1300201200,"v":87.8,"c":32775}


    die Variable "v" auszulesen, zu speichern und weiterzuverarbeiten.
    Wenn das möglich ist (wovon ich ausgehe ;) ), wie stelle ich das an?

    lg, Reb00t

    //Edit: Es geht um diese Datei: sfws.lfrz.at/json.php
  • 1) Es gibt keine PHP-Formulare. Anzeige ist HTML, PHP ist die dahinter agierende Programmlogik. An die kommst du nur, wenn du Zugriff auf das Dateisystem des Servers hast.
    Das willst du aber vermutlich nicht.

    2) Das ist kein String, das ist ein serialisiertes PHP-Array.

    3) Einen Request absetzen, Daten entgegennehmen und verarbeiten. Ist kein großes Problem, so dass jede Hilfe darin enden würde, dir den kompletten Code vorzusetzen.
    Nur ein Tipp, bevor du versuchst mit POST-Requests zu hantieren: GET-Requests nimmt die Seite auch entgegen:
    sfws.lfrz.at/json.php?command=getstations
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • Sorry aber ich checke es irgendwie nicht...

    Herausgefunden habe ich, dass ich mit NSURLDownload bestimmte Daten runterladen kann.
    Ich verstehe aber nicht, was ich alles brauche um die Daten zu laden und wie ich Sie speichern kann.
    Ich möchte NATÜRLICH nicht, dass mir jemand den Code vorkaut aber noch ein kleiner Tip wäre
    herzerwärmend... Ahja die App soll auf's iPhone... Das wird warscheinlich auch noch von Nöten sein!

    lg, Reb00t
  • Dann solltest du nächstes Mal darauf achten, ins richtige Subforum zu posten. Hier gibts auch eins speziell für iPhone und iPad.
    Soweit ich es verstehe, brauchst du den Rückgabewert der GET-Requests von Lucas. Dann hol doch einfach den NSString stringWithContentsOfURL. Ist dann halt synchron.
    Alternativ kannst du die Seite in einem Web View laden und dann mit JavaScript auslesen.
  • Ich werde jetzt mal ganz genau erklären was ich vorhabe weil ich das ganze Thema nicht durchsteige. (Damit hatte ich schon bei ActionScript immer Probleme!)

    Also: Ich habe auf dieser Seite eine Karte mit Daten entdeckt. Ich habe dann geschaut wo die Daten herkommen. Also
    bin ich auf das gestoßen. Das ist also das Formular, das alles regelt. Wenn man da jetzt z.B. auf Senden bei
    GetData drückt, werden einem alle Station mit werten ("v") etc. Angezeigt. Ich möchte diese ganzen Werte + den Stationscode in einer Tabelle ausgeben.

    z.B. so:

    Station 1 | Wert 1
    Station 2 | Wert 2
    Station 3 | Wert 3
    etc.

    Dei Stationsnamen verstecken sich ja nur hinter den Codes (z.B. Wien Zentrum = AT2002)

    Wie kann ich das jetzt richtig umsetzen? :)

    Ist für mich warscheinlich auch etwas zu heavy aber ich wills trotzdem probieren und wenn ihr mir dabei helft wäre das richtig nice!
    Wie gesagt ihr sollt mir nix vorkauen!! Das will ich auch nicht!

    lg, Reb00t
  • Okay also den Array Download habe ich jetzt überwunden. Der lädt mir jetzt also ein PHP Array runter mit x Daten.
    Habe ich ne Chance, dass ich das splitten kann?

    Quellcode

    1. {"values":{"AT0012":{"d":1300215600,"v":112,"c":46848},"AT0103":{"d":1300215600,"v":87.2,"c":32776},"AT0104":{"d":1300215600,"v":80.1,"c":32799},"AT0106":{"d":1300215600,"v":73.9,"c":32819},"AT0112":{"d":1300215600,"v":76.1,"c":32812},"AT0113":{"d":1300215600,"v":82.9,"c":32790},"AT0114":{"d":1300215600,"v":78.4,"c":32805},"AT0115":{"d":1300215600,"v":72.9,"c":32822},"AT0117":{"d":1300215600,"v":68.9,"c":32835},"AT0120":{"d":1300215600,"v":87,"c":32777},"AT0305":{"d":1300215600,"v":96.1,"c":36608},"AT0306":{"d":1300215600,"v":90,"c":32768},"AT0313":{"d":1300215600,"v":86.4,"c":32779},"AT0314":{"d":1300215600,"v":76.6,"c":32810},"AT0318":{"d":1300215600,"v":85.5,"c":32782},"AT0404":{"d":1300215600,"v":86.9,"c":32777},"AT0405":{"d":1300215600,"v":105,"c":42496},"AT0408":{"d":1300215600,"v":82.7,"c":32791},"AT0410":{"d":1300215600,"v":81.1,"c":32796},"AT0413":{"d":1300215600,"v":112,"c":46848},"AT0503":{"d":1300215600,"v":80.1,"c":32799},"AT0505":{"d":1300215600,"v":98.3,"c":38144},"AT0508":{"d":1300215600,"v":84.5,"c":32785},"AT0512":{"d":1299978000,"v":95.8,"c":36352},"AT0514":{"d":1300215600,"v":127,"c":56576},"AT0520":{"d":1300215600,"v":100,"c":39168},"AT0601":{"d":1300215600,"v":94.9,"c":35840},"AT0602":{"d":1300215600,"v":105,"c":42496},"AT0604":{"d":1300215600,"v":73,"c":32822},"AT0605":{"d":1300215600,"v":90.5,"c":33024},"AT0606":{"d":1300215600,"v":84.4,"c":32785},"AT0609":{"d":1300215600,"v":77.9,"c":32806},"AT0612":{"d":1300215600,"v":125,"c":55296},"AT0614":{"d":1300215600,"v":74,"c":32819},"AT0615":{"d":1300215600,"v":102,"c":40448},"AT0616":{"d":1300215600,"v":64.4,"c":32849},"AT0618":{"d":1300215600,"v":76,"c":32812},"AT0702":{"d":1300215600,"v":93.6,"c":35072},"AT0705":{"d":1300215600,"v":83.3,"c":32789},"AT0707":{"d":1300215600,"v":94.8,"c":35840},"AT0714":{"d":1300215600,"v":71.1,"c":32828},"AT0715":{"d":1300215600,"v":108,"c":44288},"AT0716":{"d":1300215600,"v":94.7,"c":35584},"AT0717":{"d":1300215600,"v":76.2,"c":32812},"AT0723":{"d":1300215600,"v":100,"c":39168},"AT0801":{"d":1300215600,"v":88.4,"c":32773},"AT0908":{"d":1300215600,"v":85,"c":32783},"AT0912":{"d":1300215600,"v":87.4,"c":32776},"AT0913":{"d":1300215600,"v":91,"c":33280},"AT0915":{"d":1300215600,"v":80.6,"c":32798},"AT0918":{"d":1300215600,"v":84.2,"c":32786},"AT1002":{"d":1300215600,"v":65.7,"c":32845},"AT1012":{"d":1300215600,"v":99.1,"c":38656},"AT1014":{"d":1300215600,"v":160,"c":5046016},"AT1016":{"d":1300215600,"v":92.2,"c":34048},"AT1017":{"d":1300215600,"v":96.1,"c":36608},"AT1020":{"d":1300215600,"v":94.6,"c":35584},"AT1021":{"d":1300215600,"v":71.9,"c":32825},"AT1102":{"d":1300215600,"v":98.6,"c":38144},"AT1104":{"d":1300215600,"v":74.9,"c":32816},"AT1105":{"d":1300215600,"v":81.8,"c":32794},"AT1116":{"d":1300215600,"v":125,"c":55296},"AT1207":{"d":1300215600,"v":72.4,"c":32824},"AT1208":{"d":1300215600,"v":92.4,"c":34304},"AT1210":{"d":1300215600,"v":95,"c":35840},"AT1216":{"d":1300215600,"v":74.7,"c":32816},"AT1219":{"d":1300215600,"v":68.9,"c":32835},"AT1222":{"d":1300215600,"v":173,"c":8322816},"AT1223":{"d":1300215600,"v":94.1,"c":35328},"AT1305":{"d":1300215600,"v":105,"c":42496},"AT1307":{"d":1300215600,"v":86,"c":32780},"AT1407":{"d":1300215600,"v":76.3,"c":32811},"AT1409":{"d":1300215600,"v":95.3,"c":36096},"AT1411":{"d":1300215600,"v":124,"c":54784},"AT1415":{"d":1300215600,"v":83.4,"c":32789},"AT1419":{"d":1300215600,"v":103,"c":41216},"AT1422":{"d":1300215600,"v":93.4,"c":34816},"AT1423":{"d":1300215600,"v":84.3,"c":32786},"AT1501":{"d":1300215600,"v":101,"c":39680},"AT1504":{"d":1300215600,"v":85.4,"c":32782},"AT1508":{"d":1300215600,"v":78.8,"c":32803},"AT1509":{"d":1300215600,"v":82.4,"c":32792},"AT1512":{"d":1291712400,"v":85.4,"c":32782},"AT1513":{"d":1300215600,"v":85.7,"c":32781},"AT1515":{"d":1300215600,"v":104,"c":41728},"AT1516":{"d":1300215600,"v":80.7,"c":32797},"AT1521":{"d":1300215600,"v":105,"c":42496},"AT1604":{"d":1300215600,"v":89.5,"c":32769},"AT1608":{"d":1300215600,"v":91.2,"c":33536},"AT1610":{"d":1300215600,"v":104,"c":41728},"AT1705":{"d":1300215600,"v":102,"c":40448},"AT1707":{"d":1300215600,"v":76.6,"c":32810},"AT1708":{"d":1300215600,"v":78,"c":32806},"AT1712":{"d":1300215600,"v":88.6,"c":32772},"AT1713":{"d":1300215600,"v":75.7,"c":32813},"AT1714":{"d":1300215600,"v":106,"c":43008},"AT1715":{"d":1300215600,"v":94.1,"c":35328},"AT1718":{"d":1300215600,"v":136,"c":62464},"AT1801":{"d":1300215600,"v":84.5,"c":32785},"AT1804":{"d":1300215600,"v":92.6,"c":34304},"AT1806":{"d":1300215600,"v":105,"c":42496},"AT1808":{"d":1300215600,"v":98.5,"c":38144},"AT1821":{"d":1300215600,"v":78,"c":32806},"AT1902":{"d":1300215600,"v":84,"c":32787},"AT1903":{"d":1300215600,"v":78.5,"c":32804},"AT1904":{"d":1300215600,"v":76.1,"c":32812},"AT1906":{"d":1300215600,"v":101,"c":39680},"AT1914":{"d":1300215600,"v":90.1,"c":32768},"AT2002":{"d":1300215600,"v":71.9,"c":32825},"AT2008":{"d":1300215600,"v":91.6,"c":33792},"AT2101":{"d":1300215600,"v":105,"c":42496}},"maxid":13973765,"date":1300218651}


    So sieht das insgesamt aus :D
    Sobald das gesplittet ist weiß ich wie alles funktioniert. Brauche wirklich nur noch Hilfe bei diesem Teil :D
    Ein kompletter Datensatz sieht so aus:

    Quellcode

    1. "AT2002":{"d":1300215600,"v":71.9,"c":32825}


    lg, Reb00t
  • Der Eigentümer hat ne Mail von mir bekommen. Sollte er dem nicht einstimmen, wird die App nicht publik gemacht aber ich sehe keinen Copyrightverstoß wenn ich die Daten nur über "Umwege" herunterlade zum privaten Gebrauch. Wenn er mir das OK gibt, geht die App online. Wenn nicht dann nicht.

    @Lucas de Vil: Schaut gut aus! Vielen Dank!

    lg, Reb00t
  • So ich habe jetzt mit dem wundervollen TouchJSON den json String in ein Dictionary umgewandelt mit (in etwa) folgender Ausgabe:

    Quellcode

    1. values = {
    2. AT0012 = {
    3. c = 12352;
    4. d = 45168;
    5. v = 54;
    6. };
    7. AT0013 = {
    8. c = 35123;
    9. d = 12523;
    10. v = 213;
    11. };
    12. AT0012 = {
    13. c = 52162;
    14. d = 53215;
    15. v = 56;
    16. };
    17. };
    18. usw.
    Alles anzeigen


    Was ich jetzt brauche ist folgendes:
    2 Array:

    Array 1 soll alle Standortcodes enthalten (AT0012, ..........)
    Array 2 soll parallel alle Werte der Variable "v" enthalten (110, ...........)

    Sprich wenn ich Array 1;Wert 1 und Array 2; Wert 1 ausgebe, dass die beiden Werte zueinander passen.
    Jetzt weiß ich jedoch nicht, wie ich aus dem Dictionary diese beiden Werte ausschleuse ohne etwas anderes
    mitzunehmen?!

    lg, Reb00t


    //EDIT:

    Das Problem ist folgendes:
    Die Values im Dictionary sind "date", "maxid" und "values". Alle Daten die ich brauche sind im Key "values"
    Jetzt habe ich schon probiert die Daten im key "values" in einen String zu speichern und erneut mit TouchJSON
    splitten zu lassen. Ohne Erfolg... Wie kann ich das machen?

    Geht eventuell so etwas: sfws.lfrz.at/json.php?command=getData&key=values?

    lg

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Reb00t ()