Ergebnis 1 bis 5 von 5

Thema: Personalisierter Download mit Verfallszeit

  1. #1
    Contao-Nutzer
    Registriert seit
    01.12.2009.
    Beiträge
    7

    Standard Personalisierter Download mit Verfallszeit

    Hallo zusammen,

    folgender Use Case:
    User kommt auf die Seite, fordert zu einem Objekt nähere Informationen an. Dazu muss er einige persönliche Daten eingeben und bekommt dann per E-Mail (inkl. persönlicher Ansprache) einen Link (mit einem zufällig hash) zu einem PDF, der z.B. 7 Tage lang gültig ist.

    Ist das mit Contao (einfach?) umsetzbar oder gibt es eine Erweiterung? Ich habe da nichts passendes gefunden.

    Alternativ könnte auch auf die E-Mail verzichtet werden - User gibt persönlich Daten ein, akzeptiert AGBs und kommt erst dann an das Dokument zum download heran.

    Danke für Eure Tipps
    Thomas

  2. #2
    Contao-Urgestein Avatar von jan.theofel
    Registriert seit
    23.06.2009.
    Ort
    Berlin
    Beiträge
    1.846

    Standard

    Hi,

    wäre es für dich in Ordnung, dass über ein Cookie zu lösen?

    Dann könntest du nach dem Ausfüllen des Formulars ein Cookie setzen (z.B. mit der Erweiterung ce-tracking. Die Gültigkeit kannst du auf sieben Tage setzen. Auf der Downloadseite selbst schaltest du die Erweiterung zCheckCookie voran, die das Vorhandensein des Cookies überprüft. Wenn ja bietet sie den Download an, wenn nein, wird der Besucher auf das Formular weitergeleitet.

    Das Problem dabei: Kennt der User den direkten Link zum Download, könnte er dennoch herunterladen. Du müsstest hier also auch nochmal den Cookie setzen. Dafür ist mit z.Z. keine Erweiterung bekannt.

    Auch gehe ich davon aus, dass die Datei an sich immer die gleiche ist und diese nicht selbst nochmals personalisiert ist.

    Auch möglich wäre, dem User eine Anmeldung als Mitglied abzuverlangen und den Download nur Mitgliedern anzubieten. Das wäre jedoch ohne Zeiteinschränkung und für den Anwender umständlicher.

    Jan
    Jan Theofel
    Barcamp-Moderator für Corporate-Barcamps und öffentliche Barcamps

  3. #3
    Contao-Nutzer Avatar von matze
    Registriert seit
    19.06.2009.
    Ort
    Amberg
    Beiträge
    236

    Standard

    Generell sollte so ein Verhalten aber mit relativ wenig Aufwand als Erweiterung umzusetzen sein...

  4. #4
    Contao-Fan Avatar von thepixture
    Registriert seit
    24.06.2009.
    Ort
    Dresden
    Beiträge
    536

    Standard

    Hallo,

    ich suche im Moment für genau das selbe Szenario eine Lösung und bin bei der Suche auf diesen Beitrag gestoßen.

    Gibt es hierfür mittlerweile schon eine Erweiterung, die dies ermöglicht? Bei der Suche hab ich nichts finden können.
    Grüße
    thepixture

  5. #5
    Contao-Fan Avatar von webster
    Registriert seit
    14.09.2010.
    Ort
    Kiel
    Beiträge
    460

    Standard

    Ist das mit Contao (einfach?) umsetzbar oder gibt es eine Erweiterung? Ich habe da nichts passendes gefunden.
    Also einfach ist natürlich relativ. Für eine Erweiterung aus dem Repository ist das glaube ich schon zu speziell, ohne Anpassungen und ein bisschen Coding wird das wohl nichts. Hier mal mein Ansatz, vielleicht hilft es Dir ja weiter:

    Zunächst musst Du ja veranlassen, dass beim Absenden des Formulars die eingegebenen Daten verarbeitet und gespeichert werden. Hinzu kommt, dass der Hash-Wert erzeugt werden muss. Das heisst, Du musst in den normalen Ablauf bei der Formularverarbeitung eingreifen. Ich denke, da könnte der Hook processFormData helfen. Mehr über Hooks und deren Anwendung findest Du hier.

    Innerhalb der Methode die durch den Hook aufgerufen wird:
    Speichere die eingegebenen Daten in einer eigens dafür angelegten Tabelle (ohne tl_ prefix), füge den generierten (eindeutigen) Hash und den aktuellen Timestamp für die Überprüfung der 7-Tage-Gültigkeit hinzu. Sende dann die E-Mail an die eingegebene E-Mail-Adresse. Darin sollte dann der Link zur Seite mit dem PDF stehen, natürlich mit dem Hash-Wert, z.B. als GET-Parameter.

    Den Downloadlink zum PDF kannst Du per Download-Inhaltselement auf einer beliebigen Seite im Contao bereitstellen. Du schützt diese Seite, indem Du z.B. per Insert-Tag eine php-Datei als erstes Inhaltselement einbindest. Die eingebundene Datei platzierst Du im templates-Verzeichnis. Hier könnte in etwa so etwas (exemplarisch und ungetestet!) stehen:

    PHP-Code:
    if(isset($_GET['check'])
    {
      
    // suchen des Hash-Werts aus dem GET-Parameter in der Datenbank und prüfen ob die Gültigkeit noch gegeben ist
      
    $valid time() - (86400); // jetzt - 7 Tage
      
    $sql $this->Database->prepare('SELECT * FROM xyz_pdf_download WHERE hash=? AND valid > ?')->execute($_GET['check'], $valid);
      
    // wenn Überprüfung fehl schlägt in etwa so etwas:
      
    if (!count($sql->fetchAllAssoc())
      {
        
    $this->redirect('http://www.meineseite.de/not_allowed.html');
      }
      
    // ansonsten nichts (Seite normal anzeigen)

    Sicherheitstechnisch wahrscheinlich noch nicht besonders ausgefeilt, aber da kann man sich dann ja immer noch Gedanken drüber machen, wenn es so weit ist.
    Alternativ könnte auch auf die E-Mail verzichtet werden - User gibt persönlich Daten ein, akzeptiert AGBs und kommt erst dann an das Dokument zum download heran.
    Ich denke, dass ist nicht sonderlich empfehlenswert, da so natürlich jeder das Dokument herunterladen kann. Man ist ja nicht gezwungen, echte Personendaten einzugeben, das Formular stellt also keine echte Hürde dar.
    Was ist das? - Blaues Licht - Und was macht es? - Es leuchtet blau...

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 26.02.2011, 17:45
  2. Personalisierter Newsletter
    Von lea_engel im Forum Newsletter
    Antworten: 3
    Letzter Beitrag: 21.12.2010, 11:15
  3. Cache-Verfallszeit länger 7 Tage einstellen
    Von hab_keine_ahnung im Forum Allgemeine Inhaltselemente
    Antworten: 2
    Letzter Beitrag: 16.11.2009, 18:41
  4. Problem: Verfallszeit einer Session
    Von bird im Forum Sonstiges zu Contao
    Antworten: 6
    Letzter Beitrag: 26.10.2009, 21:23
  5. personalisierter Newsletter
    Von ipalme im Forum Newsletter
    Antworten: 18
    Letzter Beitrag: 05.07.2009, 19:34

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •