Page 1 of 2

Download einer Datei nach Angabe der E-Mail

Posted: Tue 14. Jun 2016, 12:39
by update
Ich würde gerne einen Dateidownload einrichten (Musik). Bevor das Stück heruntergeladen werden kann, soll der Nutzer den Newsletter abonnieren und dabei seine E-Mail und den Namen angeben (für spätere Newsletteraussendungen).
Nach dem double-opt-in kann er (sie) dann die Datei herunterladen. Wie könnte man sowas realisieren?

Re: Download einer Datei nach Angabe der E-Mail

Posted: Tue 14. Jun 2016, 16:39
by geckse
Mh, nachdem das Formular abgesendet wurde, den Download Link aufrufen lassen?
Quasi mit Javascript / PHP in der Erfolgsmeldung (Contentpart-Formular) den Redirect durchführen / Download anhängen.

Re: Download einer Datei nach Angabe der E-Mail

Posted: Wed 15. Jun 2016, 09:03
by update
hmmm, so ganz verstehe ich das noch nicht...

Re: Download einer Datei nach Angabe der E-Mail

Posted: Wed 15. Jun 2016, 09:49
by top
Bei "double-opt-in" sollte der Download ja erst nach dem Bestätigen auf eine automatisch verschickte E-Mail möglich sein.

Ich habe die Benutzeranmeldung/-registrierung noch nie gebraucht. Wäre das nicht eine Möglichkeit? Der Download-Link wäre dann auch einer Unterseite welcher nur von angemeldeten Besuchern aufgerufen werden kann.

Oder wie läuft das mit der Newsletteranmeldung? Da müsste es doch auch einen Bestätigungslink geben. Auf der Bestätigungsseite ließe sich vielleicht auch der Download-Link unterbringen.

Re: Download einer Datei nach Angabe der E-Mail

Posted: Wed 15. Jun 2016, 13:04
by geckse
Hier mein angesprochener Ansatz:

Image

1. Formtracking für das Fomrular aktivieren
2. "Bei Erfolg" Redirect an: den Alias-Link hinschreiben mit folgenden URL-Parametern: /index.php?dein-musikdownload-alias&refid={refid}&fid={fid}
3. die Parameter als versteckte Felder anlegen:
- refid hab ich mit einem eigenen Replacementtag gelöst: {UUID} (siehe inc_script datei)
- fid ist einfach die CP-ID des Formulars, die kann statisch reingeschrieben werden

4. inc_script/fe_render datei:

Code: Select all

<?php
// ----------------------------------------------------------------
// obligate check for phpwcms constants
if (!defined('PHPWCMS_ROOT')) {
   die("You Cannot Access This Script Directly, Have a Nice Day."); }
// ----------------------------------------------------------------

// ganz einfache unique id
$content["all"] = preg_replace('/{UUID}/m', md5('uuid'.time()), $content["all"]);	

// sind die get Parameter gesetzt?
if(isset($_GET['refid']) && isset($_GET['fid'])){
	$_refid = $_GET['refid'];
	$_formid = intval($_GET['fid']);
	
        // form result selektieren
        $sql = "SELECT * FROM ".DB_PREPEND."`phpwcms_formresult` WHERE formresult_pid=$_formid";
	$result  = @_dbQuery($sql);
	$_resolved = false;
        foreach($result as $formresult){
		$_content = unserialize($formresult['formresult_content']);
		// ist die gelieferte refid gleich mit der in der db? Dann ist Zugang erlaubt
		if($_content['refid'] == $_refid){
	
			// Zugang erlaubt! Hier könnte man sich jetzt auch ein [CONDITIONAL]-Tag definieren
			// Oder nocheinmal eine prüfschleife, ob die E-Mail bestätigt wurde
			// anderenfalls: Download der Datei anhängen. Oder Link. sichtbar machen, etc.
			echo "gültig";
			$_resolved = true;
			break;
		}
	}
        if(!$_resolved){
           // leider nicht gültig
        }
} else {
	// aktion ungültig
}


Was jetzt fehlt: Der Download?! keine Ahnung wie du das da am besten lösen magst, aber da kannst du dann zmd. sicher sein, dass derjenige das Formular ausgefüllt hat. Der rest sollte keine große Magie mehr sein.

Re: Download einer Datei nach Angabe der E-Mail

Posted: Wed 15. Jun 2016, 14:00
by update
ja, das sieht gut aus. Ich frage mich jetzt, wie ich das mit dem Newsletter und der (notwendigen) double-opt-in-Funktion verbinden kann.
Der User soll sich ja in den Newsletter eintragen und wenn er den Bestätigungslink in der Anmeldemail anklickt (und damit aktiv geschaltet wird), auf die Downloadseite geleitet werden. Oder auf einen dann sichtbaren CP (der aber ansonsten versteckt ist). Geht das überhaupt?

Re: Download einer Datei nach Angabe der E-Mail

Posted: Thu 16. Jun 2016, 00:39
by geckse
Es geht alles.

double-opt-in:
Benutzt du denn für den Newsletter die phpwcms "Kommunikations" Funktion? Die hat ja ein Eintrag für "adress_verified".
Demnach könnte man damit arbeiten. Man müsste dann in meinen inc_script noch die Anmeldung irgendwie durchführen. (Inklusive E-Mail + Verify Link)

Contentpart:
Dafür wäre dann der Conditionaltag richtig gut. Dann könnte man das in jeden Contentparts Tempalte nutzen, alá [ NL_VERIFIED]{DOWNLOADLINK}[ /NL_VERIFIED] [ NL_VERIFIED_ELSE]Bitte die Newsletter Mail bestätigen um zu downloaden[ /NL_VERIFIED_ELSE]

Re: Download einer Datei nach Angabe der E-Mail

Posted: Thu 16. Jun 2016, 08:46
by Oliver Georgi
Gibt verschiedene Ansätze. Ich würde es vermutlich über die bekannten Dienste realisieren, die das z.B. an SoundCloud koppeln oder ähnliches. Gibt verschiedene Ansätze. Ansonsten bieten die bekannten Verteiler wie Mailchimp dafür auch Funktionen.

Ansonsten fängst Du das über die verify.php ab.

Re: Download einer Datei nach Angabe der E-Mail

Posted: Thu 16. Jun 2016, 10:01
by nameless1
kann sendy empfehlen. und da nach erfolgreichem double-optin die mail mit dem link hinterher senden-

Re: Download einer Datei nach Angabe der E-Mail

Posted: Sat 21. Jan 2017, 15:51
by update
Ich würde das gerne mit phpwcms lösen. Gibt es da keine Möglichkeit und wenn doch, wie?

Re: Download einer Datei nach Angabe der E-Mail

Posted: Sat 21. Jan 2017, 15:59
by update
Es würde auch schon reichen, wenn ich (optional) nach erfolgter Verifizierung eine einmalige follow-up-Mail schicken könnte mit einem temporären Link..

Re: Download einer Datei nach Angabe der E-Mail

Posted: Mon 23. Jan 2017, 10:41
by nameless1
nimm doch die success-meldung des form.

Re: Download einer Datei nach Angabe der E-Mail

Posted: Mon 23. Jan 2017, 11:04
by update
Hab ich probiert. Problem: Die kommt eher an als die Verify-Mail und dann wird diese übersehen und die Leute haben sich nicht freigeschaltet...

Re: Download einer Datei nach Angabe der E-Mail

Posted: Mon 23. Jan 2017, 11:07
by Oliver Georgi
einfach das Verify Script erweitern.

Re: Download einer Datei nach Angabe der E-Mail

Posted: Mon 23. Jan 2017, 11:54
by update
ich mache das über das Formularfeld "Newsletter", greift das da auch?