Json als String

Hi,
ich versuche gerade eine Liste für ein Modul „vor auszufüllen“ … hierfür habe ich eine Liste erzeugt, Werte eingetragen und wolle diese dann einfach als JSON bei Create einfügen.

Leider bekomme ich immer wieder den Fehler "Parse error: syntax error, unexpected ‚ProfileName‘ (T_STRING), expecting ‚)‘ "

Im Create steht:

$this->RegisterPropertyString("Profiles2Monitor", "["ProfileName":"~Battery","ProfileValue":"true"]");

In der Form

"columns": [
                {
                    "caption": "Profile Name",
                    "name": "ProfileName",
                    "width": "150",
                    "add": 0,
                    "edit": {
                        "type": "ValidationTextBox"
                    }
                },
                {
                    "caption": "Profile Value",
                    "name": "ProfileValue",
                    "width": "150",
                    "add": 0,
                    "edit": {
                        "type": "ValidationTextBox"
                    }
                }

Was mache ich beim Standardwert falsch?

Hallo
Sollte das nicht mit Hochkomma geschrieben werden ?
zB
$this->RegisterPropertyString(„Profiles2Monitor“, ‚[„ProfileName“:“~Battery",„ProfileValue“:„true“]‘);

Danke @1007 es macht die Sache besser aber noch nicht gut :slight_smile:

Ich habe es jetzt mal so eingebaut:

$this->RegisterPropertyString(„Profiles2Monitor“, ‚[„ProfileName“:„~Battery“,„ProfileValue“:„true“]‘);

Jetzt kommt aber der Fehler SyntaxError: JSON Parse error: Expected ‚]‘

Ist im 1. Post die Formdaten komplett ?
Bei „columns“ fehlt am Ende „]“

ja - die Form ist komplett in und funktioniert … das sollte es nicht sein. Wenn ich die Werte in der Form eintrage geht alles.

Sieht die Zeile bei dir auch so aus ?

1 „Gefällt mir“

Ich habe Mal den ersten Beitrag mit den Code Block versehen.
Benutzt den bitte, sonst zerhaut es euch im Forum den Code und keiner kann helfen :slight_smile:

Hier sieht man schön dass die Hochkomma nicht maskiert sind.
Und ein Json hat { für Objekte und [ für Arrays.
True und false bekommen keine Hochkomma.
Mein Tipp:
Json nicht per Hand bauen.
Mit PHP das array füllen und dann mit json_encode in die Eigenschaft schreiben.
Michael

1 „Gefällt mir“

Danke … habe es hinbekommen!

Wichtig war in der Tat das JSON in ’ ’ (Hochkomma) zu setzen