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

#1 05. März 2013 10:18

nicmare
Server-Pate
Registriert: 15. Dezember 2010
Beiträge: 1.314
Webseite

[GELÖST] FormBuilder und NMS (Anleitung)

Hat schon mal jemand beides erfolgreich gekoppelt? Ich habe im FormBuilder bisher ein Checkbox-Feld angelegt: "Ich möchte den Newsletter erhalten". Dann muss der Admin die E-Mail Adresse manuell in NMS einfügen. Das ist natürlich umständlich. Schön wäre es wenn man die Ergebnisse in die Datenbank Tabelle von NMS einsetzen könnte. Ich weiß dass NMS ein Formular mit double opt-in anbietet. Aber das ist eben nicht kombinierbar mit FormBuilder.

Beitrag geändert von nicmare (31. Oktober 2013 17:32)

Offline

#2 07. März 2013 12:30

otter24
kennt CMS/ms
Ort: Hamburg
Registriert: 12. Januar 2011
Beiträge: 339

Re: [GELÖST] FormBuilder und NMS (Anleitung)

So ich hole das Thema noch einmal hoch.

Ich bin auch auf der Suche nach einer Kombination aus beiden Modulen.
Mein Ziel die Erfassung und speicherung von Daten zur späteren Verwendung mit Double-Opt-In.
Beim Formbuilder kann ich speichern und alle Felder wie ich will ( Name Anschrift E-Mail etc. ) angeben und speichern.
Allerdings fehlt mir hier die doppelte Bestätigung.
Bei Newsletter Made Simple hab ich die doppelte Bestättigung und die Speicherung der Daten, aber habe nur 2 Felder
( Name und E-Mail)
Wie bekomme ich nun beides zusammen?
Für Ideen und Anregungen wäre ich echt dankbar.

Lustig in diesem Zusammenhang ist ja das hier... :
http://blog.bvh.info/bvh-blog/blog-post … verfahren/

Gruß aus HH

Beitrag geändert von otter24 (07. März 2013 12:32)


Ich bin war  kein Klugscheißer, ich weiß wusste es wirklich nicht besser.

Offline

#3 31. Oktober 2013 16:54

nicmare
Server-Pate
Registriert: 15. Dezember 2010
Beiträge: 1.314
Webseite

Re: [GELÖST] FormBuilder und NMS (Anleitung)

habe mich nun umfassend mit dem thema beschäftigt und eine lösung zusammengeschrieben. sie ist nicht sehr elegant und erfordert bei jedem individuelle anpassungen aber einmal eingerichtet, klappt es.

Was macht es?
Es wird im FormBuilder eine Checkbox für ein Newsletterabo hinzugefügt. Wenn man das Formular abschickt, wird der Name und die E-Mail an NMS übergeben und ein Double-Opt-In Verfahren ausgelöst.

Integration
Es muss Formbuilder und NMS installiert und eingerichtet sein.
Dann muss einmal eine normale NMS Anmeldung durchgespielt werden. In der E-Mail zur Bestätigung des Abos, müst ihr die Action-ID ($id) vom Modul und die returnid rauskopieren und in folgendem UDT einfügen:

UDT "add_email_nms"
anlegen mit dem Inhalt:

if($params["newsletter"]==1){
/* anpassen: */
$list = array("1");
$returnid = 145;
$id = m17d73;
$adminemail = "deine@email.de"
$adminemailname = "Dein Name";
$subject = "Newsletteranmeldung verifizieren";

/* ab jetzt nichts mehr anpassen */
$email = $params["email"];
$username = $params["username"];
$nms_ob = cms_utils::get_module('NMS');
$nms_ob->AddUser($email,$list,$username,0,0);

$db = &cmsms()->GetDb();
$query = "SELECT uniqueid FROM cms_module_nms_users WHERE email = '".$email."'";
$dbresult = $db->Execute($query);
$uniqueid =  $dbresult->fields["uniqueid"];
$confirmlink = $nms_ob->_cleanLink($nms_ob->_CreatePrettyLink($id,$returnid, 'confirm_email',$nms_ob->Lang('confirm'), array('uniqueid' => $uniqueid), '', true));

$message = "";
$message = "Hallo,<br><br>
Dies ist eine automatisch generierte E-Mail.<br>
Sie haben sich gerade für unseren Newsletter angemeldet.<br><br>
Wenn Sie damit einverstanden sind und kein Irrtum vorliegt, klicken Sie bitte den folgenden Link um die Anmeldung freizuschalten:<br> ";
$message .= "<a href='";
$message .= $confirmlink;
$message .= "'>";
$message .= $confirmlink;
$message .= "</a>";
$message .= "<br><br>Wenn es sich um eine Verwechslung handelt, ignorieren Sie bitte diese E-Mail!<br><br>
Vielen Dank!";
if($cmsmailer =& cms_utils::get_module('CMSMailer'))
{
		$cmsmailer->AddAddress($email);
		$cmsmailer->SetBody($message);
		$cmsmailer->SetFrom($adminemail);
		$cmsmailer->SetFromName($adminemailname);
		$cmsmailer->IsHTML(true);
		$cmsmailer->SetSubject($subject);
		$cmsmailer->Send();
		$cmsmailer->ClearAddresses();
}
}

In dem UDT müsst ihr dann die Admin-E-Mail-Adresse, den Admin-Namen und die ID der entsprechenden Newsletterliste hinterlegen.

Dann ist das wichtigste erledigt.

FormBuilder einrichten:

Im FormBuilder sollte es drei Felder geben. Für Name, E-Mail und Newsletter. Von welchem Typ die sind, ist euch überlassen. Wichtig ist aber dass der Alias in den Feldeinstellungen stimmt. In der gleichen Reihenfolge: "username","email","newsletter".
Für Newsletter habe ich eine Checkbox mit den Werten 1 und 0 angelegt.

Dann braucht ihr noch ein Feld: "*Einen benutzerdefinierten Tag mit den Ergebnissen als Parameter aufrufen". Dort wählt ihr das UDT aus. Hier noch die Einstellung "Export form reference to UDT as $params['FORM']?:" anhaken.

Fertig

so sieht es bei mir im FB aus:
Bildschirmfoto%202013-10-31%20um%2016.55.27.png

Beitrag geändert von nicmare (31. Oktober 2013 16:56)

Offline