we:write legt keinen Objektnamen an

Fragen zum Erstellen von Templates für webEdition.
stonyhubs
Junior Member
Beiträge: 12
Registriert: Mo 4. Apr 2016, 12:02
Wohnort: Münster

we:write legt keinen Objektnamen an

Beitragvon stonyhubs » Di 20. Jul 2021, 16:28

Hallo zusammen,

versuche vergeblich über

<we:write type="object" formname="mitgliederanmeldung" name="$surname>" onduplicate="overwrite" publish="true" categories="/mitgliederanmeldung" classid="11" />

über das Attribut "name=" eine Variable als Objektname zu speichern. Tut aber nicht.

Die Objekte werden korrekt angelegt, wenn das Atribut leer ist, man eine der Voreinstellungen in der Klasse auswählt oder einen festen Wert angibt. Erschreibt nur keine Variablen rein.

Vielleicht hat ja jemand eine Idee.

Danke

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

Re: we:write legt keinen Objektnamen an

Beitragvon mokraemer » Di 20. Jul 2021, 16:35

ich würde mal das '>' hinter $surname weglassen. Bist du sicher, das es $surname gibt und es nicht in GLOBALS liegt?
webEdition-Kern-Entwickler

stonyhubs
Junior Member
Beiträge: 12
Registriert: Mo 4. Apr 2016, 12:02
Wohnort: Münster

Re: we:write legt keinen Objektnamen an

Beitragvon stonyhubs » Di 20. Jul 2021, 17:53

Das '>' war es nicht.

Wenn ich eine globale Variable, erzeugt aus einem sessionfield, angebe, dann wir der name korrekt eingetragen. Sobald ich aber eine post- oder request-Variable versuche nimmt er diese nicht.

Lasse ich mir mit <?php print_r($_POST) ?> alle POST-Variablen anzeigen, so sind sie übergeben worden. Sie sind aber weder mit nem 'echo' noch mit we:var darstellbar. Liegen allerdings in nem array, könnte es daran scheitern?

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

Re: we:write legt keinen Objektnamen an

Beitragvon mokraemer » Di 20. Jul 2021, 18:10

bei var type="post"???
gib mal genau an, was du da per Post/Request versuchst - ich denke da hast du ein grundsätzlichen Denkfehler.
Welche Version nutzt du überhaupt.
webEdition-Kern-Entwickler

stonyhubs
Junior Member
Beiträge: 12
Registriert: Mo 4. Apr 2016, 12:02
Wohnort: Münster

Re: we:write legt keinen Objektnamen an

Beitragvon stonyhubs » Di 20. Jul 2021, 18:44

Vers. 8.1.5.0

Zunächst die Eingabeseite mit

<we:form type="object" classid="11" id="1944" name="mitgliederanmeldung" nameid="mitgliederanmeldung" method="post" categories="mitgliederanmeldung" >
<we:userInput type="textinput" required="required" name="mitnachname" id="mitnachname" class="form-control"/>
<button type="submit" class="m-b-sm btn btn-primary">Mitglied anmelden</button>&nbsp;&nbsp;&nbsp;
<button type="reset" class="m-b-sm btn btn-primary" >Reset</button>
</we:form>

Dann kommt die Übergabe an die Folgeseite. Die spuckt folgende POST-Variablen aus:

array(5) { ["edit_object"]=> string(1) "1" ["we_editObject_ID"]=> string(1) "0" ["we_ui_mitgliederanmeldung"]=> array(14) { ["an_bearbnachname"]=> string(0) "" ["an_vereinsnummer"]=> string(8) "23546867" ["an_verein"]=> string(0) "" ["mitanrede"]=> string(0) "" ["mittitel"]=> string(0) "" ["mitvorname"]=> string(0) "" ["mitnachname"]=> string(8) "Hubertus" ["mitgeburtsdatum"]=> string(0) "" ["mitgeburtsort"]=> string(0) "" ["mitstrasse_hausnr"]=> string(0) "" ["mitplz"]=> string(0) "" ["mitort"]=> string(0) "" ["mittelefon"]=> string(0) "" ["mitemail"]=> string(18) "" } ["code2"]=> string(3) "358" ["securityToken"]=> string(32) "525462ce5a3a869cd0acb9286cf0dd38" }

Dann versuche ich
<we:setVar from="request" namefrom="mitnachname" nameto="mitnachname" to="global"/>
<we:write type="object" formname="mitgliederanmeldung" name="$mitnachname" onduplicate="overwrite" publish="true" categories="/mitgliederanmeldung" classid="11" />

Wo ist der Denkfehler?

ThomasGoebe

Re: we:write legt keinen Objektnamen an

Beitragvon ThomasGoebe » Di 20. Jul 2021, 19:00

stonyhubs hat geschrieben: Di 20. Jul 2021, 18:44 Wo ist der Denkfehler?
Es gibt kein $_POST["mitnachname"], sondern "nur" ein $_POST["we_ui_mitgliederanmeldung"]["mitnachname"] . we:setVar greift also an der Stelle nicht auf die richtige Struktur zu.

Ich weiss nicht, ob inzwischen so was wie

Code: Alles auswählen

<we:setVar from="request" namefrom="we_ui_mitgliederanmeldung[mitnachname]" nameto="mitnachname" to="global"/>
klappt. Wenn nicht, dann brauchst Du

Code: Alles auswählen

<?php
  $GLOBALS['mitnachname'] = $_POST['we_ui_mitgliederanmeldung']['mitnachname'];
?>
Oder vielleicht noch irgendeinen anderen Tag, den ich jetzt nicht parat habe.

stonyhubs
Junior Member
Beiträge: 12
Registriert: Mo 4. Apr 2016, 12:02
Wohnort: Münster

Re: we:write legt keinen Objektnamen an

Beitragvon stonyhubs » Mi 21. Jul 2021, 10:23

Wald – Bäume – sehen ;-)
Bin ein ganzes Stück weiter.
Danke, das hat gut funktioniert.


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

Wer ist online?

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