mailformplus - In DB speichern

josDesign

Erfahrenes Mitglied
[T3] mailformplus - In DB speichern

Hallo!

Hat jemand von euch schon mal das Speichern der Daten von mailformplus in eine Datenbank hinbekommen?

Irgendwie will das nicht so recht...
Hat jemand für mich ein Sample-TS, dass ich mir durchgucken kann?

Mit bestem Dank im Voraus,
jos
 
Zuletzt bearbeitet:
Als erstes brauchst du eine entsprechende Tabelle:

z.B.:
SQL:
CREATE TABLE tx_mailformsave_save (
    uid int(11) NOT NULL AUTO_INCREMENT,
    pid int(11) NOT NULL DEFAULT '0',
    deleted tinyint(3) NOT NULL DEFAULT '0',
    hidden tinyint(3) NOT NULL DEFAULT '0',
    firma varchar(100) NOT NULL DEFAULT '',
    adresse varchar(100) NOT NULL DEFAULT '',
    land varchar(100) NOT NULL NOT NULL,
    
    PRIMARY KEY(uid),
);


Danach musst du ein Mapping erstellen, dass dafür sorgt, dass die Daten auch da hineingeschrieben werden, vor dem versandt

z.B.:
Code:
plugin.tx_thmailformplus_pi1 {
    saveDB = 1
    saveDB {
        dbTable = tx_mailformsave_save
        dbinsert = pid:123,hidden:0,deleted:0
        fields.formfield_firma.mapping = firma
    }
}

Habe das ganze nicht getestet, aber so ungefähr muss es gehen.

Gott sei dank ist das Manual der Extension durchaus umfangreich, solltest du unbedingt lesen, zumal sich mit Version 4 der Ext ein paar Sachen geändert haben.
http://typo3.org/documentation/docu...als/th_mailformplus/4.0.0/view/1/3/#id3554691

Habe dieses Feature selbst noch nicht produktiv eingesetzt. Würde mich interessieren wie du das gemacht hast, wenn du es gemacht hast.

Georg
 
Zuletzt bearbeitet von einem Moderator:
Sehr gut!

Die Doku hab ich mir gerade eben runtergezogen und drucke sie grad aus...


Wenn wir schon dabei sind, ein anderes Thema? Kennst dich du mit Calendar Base aus? Hast du schon mal mit dem Verändern der Templates zutun gehabt. Genauer gesagt geht es um das piphpcalendar.tmpl.... Es erstellt für ###TITLE### nicht nur in der Ausgabe "Kalendereintrag" sondern es macht daraus:

HTML:
<div><label for="title">Titel:</label>Kalendereintrag</div>
 
In Zeile 592 der Datei class.tx_cal_phpicalendar_model.php (Ordner model) wird die Funktion getTitleMarker definiert.

Dort wird, je nach bedarf, eine stdWrap Konfigurationen an dem Titel angewendet.

Nähre Suche nach stdWraps im TS Setup der Extension, ergab diesen Fund:

Code:
plugin.tx_cal_controller.view.event.title_stdWrap.dataWrap = <div><label for="title">{LLL:EXT:cal/controller/locallang.xml:l_event_title}:</label>|</div>

Dieser fügt das div - tag, das label - Tag und das Label selbst ein. Ob das jetzt der stdWrap ist, denn du brauchst, weiß ich nicht. Kommt auf den view an, denn du auf der ensprechenden Seite gesetzt hast.
 
Ahja... Naja, das verstehe ich nun auch.

Meine Frage: Wie gehst du Suchen im Quellcode vor?

Ich meine wie kommst du darauf, dass ich mit diesen Code dies verändern kann?
Es hat nämlich funktioniert. Ich habe das gleiche dann auch für die Description problemlos gemacht.

Aber mich würde echt interessieren wo ich anfangen müsste zum Suchen.
 
Dazu musst du die Funktionsweise von Typo3 halbwegs kapieren.
Am Beispiel deines wrap Problems:

Wenn etwas irgendwo rundherum gemacht wird, empfiehlt es sich nach ... wrap ... zu suchen. Wenn das ganze der Titel ist dann ... title ... wrap ...

Den Quellcode kannst du am einfachsten mit einer IDE durchsuchen, indem du ein Stück des geparsten TS eingibst

Aus

Code:
lib.stdheader.10.1 = TEXT
lib.stdheader.10.1.current = 1

wird ein Array geparst das so aufgebaut wird:

PHP:
$ts['lib.']['stdheader.']['10.']['1'] = 'TEXT';
$ts['lib.']['stdheader.']['10.']['1.']['current'] = '1';

Nach solchen Array Teilen kannst du ganz leicht suchen. So kann man schön nach bestimmten Codeteilen suchen.

Zu dem Thema gibts einen guten Artikel im Typo3 Wiki, hab allerdings den Links nicht mehr.
Falls ich ihn wieder finde, poste ich ihn hier.
 

Neue Beiträge

Zurück