Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 30. März 2011 16:49

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

Hallo,

ich habe im Orders Modul bei dem Formular Template ein eigenes Formular Feld erstellt:

<select name="versandoptionen">
  <option value="30.00" selected>Shipping within Switzerland (economy pack) 30.00 CHF</option>
  <option value="120.00">Shipment without customer number, FedEx only. Cost: 120 CHF</option>
  <option value="50.00">Shipment using Customer number of other Expeditors (DHL, UPS, DPD,...). Processing Costs: 50.- CHF </option>
  <option value="0.00" >Shipment using my FedExnummer. Additional Cost: 0.- CHF </option>
</select>

Und wollte dieses mittels smarty auf dem nächsten Formular Template/Seite wo das Formular hingeleitet wird (Bestellbestätigungsformular)  mit:

{$smarty.post.versandoptionen|escape:"html"}

ausgeben.

Aber leider übergibt es die Daten auf das nächste Formular nicht.

Weis jemand was ich machen muss damit diese Daten auch übergeben werden?

gruss
nico

Offline

#2 30. März 2011 18:44

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

Wird das Formular auch via 'post' versendet?


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#3 31. März 2011 09:08

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re: Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

Jap wird es:

        <form id="m69a8dmoduleform_3" method="post" action="index.php?page=customer-information" class="cms_form" enctype="multipart/form-data">

wen ich z.B. etwas nicht ausfühle und den Smarty tag auf der gleichen seite verwende

{$smarty.post.versandoptionen|escape:"html"}

Wird der Value richtig übertragen aber sobald es auf die nächste Seite geht um mit der Bestellungvorzufahren verschwindet der Wert.

Die Formular Seite URL sieht so aus: index.php?page=customer-information aber die URL die es weitergeleitet wird so:
index.php?page=payment&mact=Orders,cntnt01,confirm,0&cntnt01returnid=108&cntnt01order_id=151


Es wird irgendwie durch ein PHP File übertragen nur weis ich nicht welches und was ich dort eintragen kann damit ich den Wert kriege.

Offline

#4 31. März 2011 09:24

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

Ich hab das Modul selbst nicht in Verwendung, aber du könntest dies behelfsweise in einer Session zwischenspeichern. Das CGSimpleSmarty-Modul enthält dazu einen passenden Tag wink.

Offline

#5 31. März 2011 09:43

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re: Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

Das Problem ist bei dem das die Variable zu lange in der Session gespeichert ist weil wen z.B. ewats falsche gewählt hat bei den Versandoptionen und danach zurück geht auf das Formular und etwas anderes auswählt werden immrnoch der wert von vorhin angezeigt.

Beitrag geändert von dalton (31. März 2011 09:58)

Offline

#6 31. März 2011 10:24

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

dalton schrieb:

Die Formular Seite URL sieht so aus: index.php?page=customer-information aber die URL die es weitergeleitet wird so:
index.php?page=payment&mact=Orders,cntnt01,confirm,0&cntnt01returnid=108&cntnt01order_id=151

Na da haben wir doch schon den Übeltäter.
Das Formular wird an Seite A gesendet. Stimmt etwas nicht, wird auch Seite A mit Fehlermeldung angezeigt. Daher haben wir dort auch Zugriff auf die Post-Daten. Ist alles okay, wird allerdings vom Modul ohne Post-Daten auf Seite B umgeleitet. Schon sind die Post-Daten weg. Ohne am Modul herumzubasteln wirst Du das nicht ändern können.
Ich vermute Du müsstest die Datei action.default.php bearbeiten, um
1. anstelle eines Redirects einfach eine Modulaktion auszuführen ($this->DoAction anstellen von $this->Redirect - Aktion wäre 'confirm'), der Du alle nötigen Parameter übrgeben kannst und
2. in dieser Modulaktion (action.confirm.php oder in Orders.module.php nach einer Funktion namens DoAction suchen) die eingegebenen Formulardaten an Smarty übergibst, damit Du sie im Template anzeigen kannst.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#7 31. März 2011 10:48

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re: Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

Also wen ich das $this->Redirect mit $this->DoAction austausche bleibt es einfach auf der gleichen Seite aber das nütz mir nicht viel.

Und in der Confirm oder Orders.module.php Datei finde ich kein DoAction.

Ich müsste die Daten auf die andere Seite übergeben wie es mit den anderen Feldern geht nur wo finde ich diese übergabe?

Offline

#8 31. März 2011 11:23

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

Soweit ich das jetzt im Quellcode gesehen habe, wird das über Cookies bzw. Sessions erledigt.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#9 31. März 2011 12:14

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re: Orders Modul (eigenes Feld) gibt die Daten nicht weiter?

Also danke für eure Hilfe,
ich hab dies jetzt anderst gelöst mittels den 4 PHP Dateien und Datenbank wo die Felder drin sind.

Offline