JSON File mit Listview erstellen.

Fragen zum Erstellen von Templates für webEdition.
mtbrmatze
Senior Member
Beiträge: 136
Registriert: Di 22. Jan 2013, 19:46

JSON File mit Listview erstellen.

Beitragvon mtbrmatze » Mi 14. Feb 2018, 18:58

Ich habe folgenden Code erstellt, welcher ein gültiges JSON File erstellen soll. Da beim letzten Eintrag das Komma entfernt werden muß habe ich das mit we:position gemacht. Nun wird aber der letzte Eintrag doppelt ausgegeben. Mach ich hier was falsch?

Code: Alles auswählen

{
"tour": [
<we:listview type="document" name="json" doctype="DEUTSCH" order="StartDatum" >
<we:repeat>
       {
           "start": "<we:field name="StartDatum" type="date" format="d.m.Y"/>",
           "ende": "<we:field name="EndeDatum" type="date" format="d.m.Y"/>",
       },
<we:ifPosition type="listview" reference="json" position="last">
       {
           "start": "<we:field name="StartDatum" type="date" format="d.m.Y"/>",
           "ende": "<we:field name="EndeDatum" type="date" format="d.m.Y"/>",
       }
</we:ifPosition>
</we:repeat>
</we:listview>
]
}


Benutzeravatar
blickfang
webEdition Partner
webEdition Partner
Beiträge: 812
Registriert: Mo 15. Dez 2003, 16:00
Kontaktdaten:

Re: JSON File mit Listview erstellen.

Beitragvon blickfang » Mi 14. Feb 2018, 19:02

die Ausgabe vor Deinen we:ifPosition wird ja trotzdem gemacht, daher steht das dann zweimal drin. DU musst das mit <we:else /> klammern

Code: Alles auswählen

<we:ifPosition>

<we:else />

</we:ifPosition>
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.

mtbrmatze
Senior Member
Beiträge: 136
Registriert: Di 22. Jan 2013, 19:46

Re: JSON File mit Listview erstellen.

Beitragvon mtbrmatze » Do 15. Feb 2018, 08:55

Danke,

hätte ich auch selbst draufkommen können.

Matze

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: JSON File mit Listview erstellen.

Beitragvon mokraemer » Do 15. Feb 2018, 18:29

ich bin kein Freund davon Austauschformate von Hand zu machen. Die Felder die du hier zeigst (Datum) sind unkritisch, aber wenn da jetzt Text reinkommt, dann muß korrekt escaped werden.
Man sollte hier besser ein php-Array machen und das am Ende von php encoden lassen. Damit ist man auf der sicheren Seite.
webEdition-Kern-Entwickler

mtbrmatze
Senior Member
Beiträge: 136
Registriert: Di 22. Jan 2013, 19:46

Re: JSON File mit Listview erstellen.

Beitragvon mtbrmatze » Do 22. Feb 2018, 12:52

mokraemer hat geschrieben: Do 15. Feb 2018, 18:29 ich bin kein Freund davon Austauschformate von Hand zu machen. Die Felder die du hier zeigst (Datum) sind unkritisch, aber wenn da jetzt Text reinkommt, dann muß korrekt escaped werden.
Man sollte hier besser ein php-Array machen und das am Ende von php encoden lassen. Damit ist man auf der sicheren Seite.

Ja das stimmt. Aber JSON ist mittlerweile ein viel genutztes Austausch Format. Ich habe das so gelöst:

Code: Alles auswählen

<we:field name="TXT2" striphtml="true" to="global" name="txt2"/><?php echo addslashes($GLOBALS[txt2]);?>
Müsste so wohl alles validieren, oder?

Benutzeravatar
blickfang
webEdition Partner
webEdition Partner
Beiträge: 812
Registriert: Mo 15. Dez 2003, 16:00
Kontaktdaten:

Re: JSON File mit Listview erstellen.

Beitragvon blickfang » Do 22. Feb 2018, 15:10

Macr meint wohl eher, dass Du alles in ein php-Array sammeln kannst und dann das Array final mit

Code: Alles auswählen

json_encode($deinArray)
in das gewünschte Format konvertierst
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.


Zurück zu „webEdition Templates erstellen (we:Tags)“

Wer ist online?

Mitglieder in diesem Forum: Ahrefs [Bot] und 13 Gäste