Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] JSON_Encode erzeugt fehler unexpected character

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] JSON_Encode erzeugt fehler unexpected character

    Hi,

    ich bin da über ein Problem gestolpert und bekomme es auch nach intensiver Googelei nicht gelöst.
    Es geht um JSON und JQuery, wobei der Fehler auf json_encode eingeengt werden kann.
    Um das Problem darzustellen habe ich folgenden Code in einem Link hinterlegt:

    PHP-Code:

            
    if(isset($_GET["JSONTEST"]))
                {
                
    //header("Content-type: application/json");
                
    header("Content-type: text/plain");
                
    //header("Content-type: text/plain;");
                //echo json_encode(array('warnig' => false,'warning_msg'=> 'Test'), JSON_FORCE_OBJECT);
                
    echo my_json_encode(array('warnig' => false,'warning_msg'=> 'Test'));
                exit;
                } 
    Wie man sieht habe ich es schon mit verschiedenen Headern und json_encode Einstellungen versucht.
    Wenn ich den Link auf der Seite http://jsonlint.com/ aufrufe, bekomme ich immer die Fehlermeldung: JSON.parse: unexpected character at line 1 column 1 of the JSON data und es wird immer das erste Zeichen, also das Opening curly brace bemängelt.

    Kann mir jemand einen Tipp geben, wo hier der Wurm drin ist?

    Danke!

  • #2
    PHP.de Wiki | Debugging:Leitfaden
    [COLOR="#F5F5FF"]--[/COLOR]
    [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
    [COLOR="#F5F5FF"]
    --[/COLOR]

    Kommentar


    • #3
      Ist das eine automatische Antwort?

      Ich leite die Ausgabe des Json schon bereits in mehrere Ausgaben um. Zusätzlich verwende ich Wireshark um die Netzwerkkommunikation zu überwachen. Ich konnte deshalb trotzdem nicht ergründen, warum Java meint, dass { wäre falsch, obwohl die Syntax hier http://de.wikipedia.org/wiki/JavaScript_Object_Notation und auch an anderen Stellen so beschrieben steht.

      Aber vielen Dank für den üppigen Hilfeversuch!

      Kommentar


      • #4
        Ist das eine automatische Antwort?
        Nein. Das auch nicht:
        warum Java meint, dass { wäre falsch
        Java ist nicht Javascript. Ist es nicht.
        [COLOR="#F5F5FF"]--[/COLOR]
        [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
        [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
        [COLOR="#F5F5FF"]
        --[/COLOR]

        Kommentar


        • #5
          Na super. den Foren-Troll kenne ich schon mal.
          Mir ist bewusst das Json nur eine Datenstruktur ist, diese wird aber von einen Java-Parser interpretiert.
          Ich hoffe die Threads hier verlaufen nicht ständig in dieser Form.

          Kommentar


          • #6
            Tja, im Gegentum zu Dir habe ich ne Ahnung, was das Problem sein könnte. Und die würde sich bestätigen, wenn Du halt dem Debugging-Leitfaden folgst. Aber nee, Du willst ja lieber hier rumheulen. Dann mach halt.

            [edit] Und Firebug bestätigt mir diese Vermutung.
            [COLOR="#F5F5FF"]--[/COLOR]
            [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
            [COLOR="#F5F5FF"]
            --[/COLOR]

            Kommentar


            • #7
              Zitat von nikosch Beitrag anzeigen
              Tja, im Gegentum zu Dir habe ich ne Ahnung, was das Problem sein könnte. Und die würde sich bestätigen, wenn Du halt dem Debugging-Leitfaden folgst. Aber nee, Du willst ja lieber hier rumheulen. Dann mach halt.

              [edit] Und Firebug bestätigt mir diese Vermutung.
              Oh nikosch, Du in deiner unendlichen Weisheit, nervst alle Menschen, die auf der Suche nach Hilfe sind und Seitenweise solche Posts wie Du sie schreibst lesen müssen.

              Nikosch eines kannst Du mir glauben, deine Hilfe brauche ich nicht, ich bin schon weiter. Ich bin 45 Jahre alt und werde mich von so einen wie Dir nicht erziehen lassen.
              Warum schreibst Du nicht einfach das nächste Mal, lies doch die Sourcecodes von PHP und Java?
              Man kann ja auch noch eine neue Programmiersprache schreiben, um ein Problem zu lösen.

              Wenn Du helfen willst, dann schreib es, oder behalte einfach deine Jodahaften Posts für Dich!
              Oder bist Du ein kleiner grüner Zwerg? Dann würde ich deine Posts ja vielleicht noch witzig finden.

              LG
              Oldpille.

              Kommentar


              • #8
                Mein Gott, aktivier das error_reporting, dann springt Dich das Problem an. Wenn Du mit 45 immer noch an die Sternthaler glaubst und nicht mal ein Yota zwischen den Zeilen lesen kannst, dann guck doch bitte mal in den Spiegel, statt mich hier belehren zu wollen.
                Man kann ja auch noch eine neue Programmiersprache schreiben, um ein Problem zu lösen.
                Man kann auch mal die Hose ohne Kneifzange anziehen, den Vorschlag einfach ausprobieren und erkennen, dass man einen Fehler gemacht hat.
                [COLOR="#F5F5FF"]--[/COLOR]
                [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                [COLOR="#F5F5FF"]
                --[/COLOR]

                Kommentar


                • #9
                  Sollte jemand mal das gleiche Problem haben, dass er ein Parse-Error bei Json für das erste Zeichen bekommt und es ist ein {, dann sind dort Zeichen, die nicht dargestellt werden können, weil diese nicht im Zeichensatz sind.

                  Mein Problem habe ich gelöst, indem ich noch mal meine .php Dateien überprüft habe und es gab eine Datei, die ich mit einen require_once eingelesen wurde, welche noch im UTF-8 gespeichert war.
                  Diese habe ich in UTF-8 ohne BOM geändert und seit dem funktioniert alles.

                  Jedenfalls sind die JSON Validate Seiten nur eine Überprüfung der Struktur und nicht der kompletten Daten, weshalb ich ein wenig auf das Glatteis geführt worden bin.

                  Und ja, man kann die sonderlichen Zeichen auch bei Firebug sehen.

                  LG Pille

                  Kommentar

                  Lädt...
                  X