advancedform_XH CSV Trennzeichen ändern

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
Post Reply
Traktorist
Posts: 235
Joined: Mon Mar 07, 2011 4:34 pm
Location: South of Lower Saxony, Germany

advancedform_XH CSV Trennzeichen ändern

Post by Traktorist » Wed Jan 25, 2012 11:31 pm

Hallo,

advancedform_XH ist genau das Plugin wie ich es gesucht habe.
Nach einigem Basteln habe ich nun noch eine Frage:

Ist es irgendwie möglich in die Ausgabe für die CSV Datei ein ; (Semikolon) anstatt eines Tab zu bekommen?


Das möchte ich noch loswerden: Allen Entwicklern o. anderswie Beteiligten an den CMSimple Projekten ein ganz dickes Lob und herzlichen Dank.

Traktorist
Posts: 235
Joined: Mon Mar 07, 2011 4:34 pm
Location: South of Lower Saxony, Germany

Re: advancedform_XH CSV speichern ohne email

Post by Traktorist » Wed Jan 25, 2012 11:33 pm

Hallo,

gleiche noch eine Frage:
Kann man den Versand eine E-Mail, evtl. durch auskommentieren, unterbinden? So das nur die CSV Datei geschrieben wird?

Viele Grüße

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: advancedform_XH CSV Trennzeichen ändern

Post by cmb » Thu Jan 26, 2012 1:00 am

Hallo Traktorist,

freut mich, dass Du Advancedform_XH gebrauchen kannst. :)

Das Tab als Trenner habe ich gewählt, weil das in den Formularfeldern nicht eingegeben werden kann, und es somit immer klar ist, dass ein Tab ein Feldtrenner ist. Ansonsten müsste man ggf. sicher stellen, dass das Trennzeichen innerhalb von Feldern irgendwie "escape't" wird. Das ginge sehr elegant mit fputcsv(), aber diese Funktion steht erst ab PHP5 zur Verfügung. Daher habe ich auf eine Konfigurationsoption verzichtet.

Die Änderung kann allerdings direkt in plugins/advancedform/advancedform.php, in der Funktion advfrm_append_csv() vorgenommen werden. In Zeile 343 steht:

Code: Select all

        || fwrite($fh, implode("\t", $fields)."\n") === FALSE) { 
Hier kann das "\t" einfach durch ";" ersetzt werden. Es gibt dann aber wie gesagt Mehrdeutigkeiten, wenn das ";" in einem der Felder eingegeben wurde.
Traktorist wrote:Kann man den Versand eine E-Mail, evtl. durch auskommentieren, unterbinden? So das nur die CSV Datei geschrieben wird?
Ja, das ist möglich. Zum einen kann in der genannten Datei die Funktion advfrm_mail() geändert werden:

Code: Select all

function advfrm_mail($id, $confirmation) {
    return TRUE;
}
 
Eine andere Möglichkeit ist den advfrm_custom_mail()-Hook zu verwenden (dies wirkt dann immer nur für ein Formular, so dass bei anderen Formularen die Mails versendet werden können). Wie das geht, ist in der Hilfe (hoffentlich hinreichend deutlich) beschrieben. Ansonsten einfach noch mal nachfragen.

Christoph
Christoph M. Becker – Plugins for CMSimple_XH

Traktorist
Posts: 235
Joined: Mon Mar 07, 2011 4:34 pm
Location: South of Lower Saxony, Germany

Re: advancedform_XH CSV Trennzeichen ändern

Post by Traktorist » Thu Jan 26, 2012 1:21 pm

:D

Hallo Christoph,

ganz herzlichen Dank für die schnellen und kompetenten Antworten.

Viele Grüße, Ele

Post Reply