Ergebnis 1 bis 14 von 14

Thema: Dateidownload durch Code-Eingabe freigeben

  1. #1
    Contao-Nutzer
    Registriert seit
    24.06.2009.
    Beiträge
    174

    Standard Dateidownload durch Code-Eingabe freigeben

    moin,

    ich wurde gebeten, eine option einzurichten, mit der man per freischaldcode einen download anzeigen kann. dieser soll dann auch noch auf eine bestimmte anzahl begrenzt werden. also nach 3 downloads soll er nicht mehr angezeigt werden.
    außerdem sollen die codes vorher vergeben werden.

    (auf einer CD soll auf der rückseite ein code abgedruckt werden, mit dem man auf der webseite weiteren content bzw den inhalt der CD zusätzlich downloaden kann)

    mein ansatz wäre jetzt folgender:

    ich würde ein formular einrichten, dessen daten per EFG abgespeichert werden.
    in dem formular ist ein textfeld, in welches man den code eingibt.
    dann wird auf eine seite weitergeleitet, in die das auflistungsmodul eingebunden wird.
    soweit zur groben idee.

    die CD ist limitiert (wieviele weiß ich nicht. ist aber überschaubar)
    ich würde VORHER die eintragung in der tabelle tätigen. also für jede CD den eintrag mit einem feld, in dem der freischaltcode steht.

    das auflistungsmodul müsste dann per bedingung abgleichen, ob der vorher hinterlegte code mit dem eingegebenen code in einem feld übereinstimmt und dann den download anzeigen (die anzeige würde ich eventuell per file-inserttag realisieren. weiß noch nicht, ob das funzt.)
    wenn der downloadzähler durch die addierung dann 3 erreicht hat, soll das auflistungsmodul anstatt des downloads ein anderes feld anzeigen, in dem der text: "du hast bereits 3 mal downgeloaded" hinterlegt ist, angezeigt werden. man könnte auch subtrahieren. wenn man bei 0 angelangt ist, hätte man DISABLE als bedingung.

    ich möchte bewusst ohne mitgliederregistrierung arbeiten.

    hat von euch jemand eine lösung?
    geht das mit dem EFG?

    danke, andi.
    Geändert von andi-bar (27.03.2010 um 11:36 Uhr)

  2. #2
    Contao-Nutzer
    Registriert seit
    20.09.2009.
    Beiträge
    62

    Standard

    Wie willst du ohne Mitgliederregistrierung vehindern, dass jemand die Datei mehr als 3 mal runterlädt? Du hast außer vielleicht per Cookie und IP keine Möglichkeit den Benutzer zu identifizieren bzw. den Zähler an den Benutzer zu binden. Selbst das lässt sich schnell umgehen. Cookie löschen und neu mit dem Provider verbinden. Außerdem wird keiner daran gehindert sein, den Code weiter zu geben.

    Vielleicht gibt es eine Möglichkeit, den Code für die Anmeldung zu nutzen. Du könntest für jede CD ein Mitglied anlegen mit dem Code als Benutzernamen und Passwort(oder ein anderes). Da jede Anmeldung in der Datenbank unter 'loginCount' gespeichert wird, hättest du schon den Zähler. Dann brauchst Du ja nur noch an der Stelle des Downloads überprüfen ob 'loginCount' schon 3 ist.

    Waren jetzt mal so meine Überlegungen, vielleicht kannst damit was anfangen

    Edit: Mir fällt grad ein, dass Du dann ja trotzdem noch überprüfen müsstest, ob die Datei 3 mal runtergeladen wurde. Kann ja auch sein man meldet sich mit dem Code an aber lädt nicht runter. Hm verzwickte Sache.
    Geändert von CrazyHorst (29.03.2010 um 12:13 Uhr)

  3. #3
    Community-Moderator Avatar von schman
    Registriert seit
    19.06.2009.
    Ort
    Dornbirn
    Beiträge
    3.739
    User beschenken
    Wunschliste

    Standard

    soweit ich das verstanden habe geht es gar nicht darum das der Besitzer diese 3 mal herunterlädt. Sondern wenn der Sicherheitscode 3 mal verwendet wurde, egal wer diesen verwendet hat, dann gibt es keinen Downloadlink mehr.

  4. #4
    Contao-Nutzer
    Registriert seit
    20.09.2009.
    Beiträge
    62

    Standard

    ... in dem der text: "du hast bereits 3 mal downgeloaded" hinterlegt ist ....
    das klingt für mich wie für einen speziellen Benutzer. Dann hab ich das vielleicht dadurch falsch vestanden.

  5. #5
    Contao-Nutzer
    Registriert seit
    24.06.2009.
    Beiträge
    174

    Standard

    genau so meinte ich das

    es soll also ein abgleich geschehen mit dem eingegebenen code. davon abhängig soll quasi ein wert runterzählen, bis er bei null ist und dann soll anstatt dem download ein text angezeigt werden.

    nehmen wir mal an, es handelt sich nicht um einen download, sondern um zwei verschiedene texte.

    der inhalt, der in die tabelle eingetragen wird, ist ja egal.

    durch den versteckten wert "-1" (so stelle ich mir das vor) wird dann aus einem feld subtrahiert.
    bei dem auflistungsmodul müsste dann eine abhängigkeit von diesem feld eingetragen werden. also eine bedingung. "wenn";"dann";"sonst"

    das müsste doch funktionieren, oder?

    wie kann man denn zahlenwerte addieren?

  6. #6
    Contao-Nutzer
    Registriert seit
    24.06.2009.
    Beiträge
    174

    Standard

    scheinbar hat noch keiner eine lösung für mein problem


    ich würde es gern ein wenig abwandeln.


    es gibt ja das downloadstatistik-modul. es zählt ja downloads.
    gibt es eine möglichkeit, dass man sehen kann, welches mitglied eine datei wie oft runtergeladen hat?

    ich würde den download nun mit mitgliedern realisieren. aber ich will nicht, dass jedes mitglied unendlich runterladen kann, sondern nur 3 mal (oder so).

    vorschläge sind willkommen

    vielen dank,
    andi.

  7. #7
    Contao-Fan Avatar von ku-ma-122
    Registriert seit
    20.06.2009.
    Ort
    Kulmbach
    Beiträge
    605

    Standard

    Wie sind denn Deine PHP-Kenntnisse?

    Mit der Erweiterung: Downloadartikel hast Du eigentlich Deine Wünsche schon abgedeckt.

    Mit einer Anpassung der Erweiterung (Statt Paypal ein Formularfeld das mit dem Code den Freischaltlink öffnet) ist es sicher realisierbar.
    Gruß
    Markus

    ---
    http://www.76pixel.de

  8. #8
    Contao-Nutzer
    Registriert seit
    24.06.2009.
    Beiträge
    174

    Standard

    ich hatte sowas ähnliches auch schon überlegt.
    allerdings reichen meine kenntnisse dafür nicht aus. leider.

    ich hatte das modul mal testweise installiert und gehofft, dass es dort die möglichkeit gibt, den download manuell freizuschalten, wenn der user bezahlt hat. dem war leider nicht so. das passiert alles automatisch.


    eventuell kann mir der programmier dieses moduls weiterhelfen.

    andi

  9. #9
    Contao-Nutzer
    Registriert seit
    24.06.2009.
    Beiträge
    174

    Standard

    hallo...
    mir konnte bei meinem problem bisher niemand helfen.
    ich hab mich durch etliche tutorials gegraben und ungefähr den code zusammengeschraubt, den ich brauche...
    allerdings muß man den jetzt zu einem modul zusammenkriegen
    (einfach mit dem dem file-insert tag hat nicht funktioniert)

    was ich brauche ist eigentlich das gleiche, wie das content element "DOWNLOAD", welches in TL schon integriert ist. allerdings wird das durch einen freischaltcode und einen counter erweitert.

    zuerst mal hier der PHP-code ohne typolight:

    PHP-Code:
    <?php
    session_start
    ();
    //$benutzername = $_POST['benutzername'];
    $kennwort     $_POST['kennwort'];


    //echo "Test: benutzername: $benutzername <br />";
    //echo "Test: kennwort: $kennwort <br />";

    if ( "1234" == $kennwort )

    {
        
    $_SESSION['eingeloggt'] = TRUE;
    }

    if ( 
    $_SESSION['eingeloggt'] == TRUE )
    {
        echo 
    "<p>Sie sind eingeloggt</p>";
        echo 
    "<p><a href=\"download.php\">download</a></p>";

    }

    if ( 
    $_SESSION['eingeloggt'] != TRUE )

    {

    ?>


    <form action="downloadcode.php" method="post">
    Kennwort:<br />
    <input type="password" name="kennwort" />
    <br />
    <br />
    <input type="submit" value="einloggen" />




    </form>
    <?php
    }
    ?>
    wie man unschwer erkennen kann, sieht es aus, wie ein login-modul. ist ja eigentlich auch das gleiche. allerdings wird der benutzername weggelassen.

    wenn diese datei abgehandelt wird, startet eine zweite php-datei den erzwungenen download (wobei ich mich schon gefragt habe, ob man das nicht auch in einer datei unterbringen kann)

    PHP-Code:
    <?php
    session_start
    ();

    if ( 
    $_SESSION['eingeloggt'] == TRUE )
    {

    $file 'test.jpg';
    header('Content-Description: File Transfer');
    header('Content-Type: application/force-download');
    header('Content-Length: ' filesize($filename));
    header('Content-Disposition: attachment; filename=' basename($file));
    readfile($file);
    session_destroy();

    }

    if ( 
    $_SESSION['eingeloggt'] != TRUE )

    {

    ?>

    <form action="downloadcode.php" method="post">

    Kennwort:<br />
    <input type="password" name="kennwort" />
    <br />
    <br />
    <input type="submit" value="einloggen" />

    </form>
    <?php
    }

    ?>
    soooooooo...
    mit diesen zwei PHP-dateien bekomme ich genau das, was ich brauche.
    ich möchte aber nun ein conten element für typolight daraus machen.

    ich habe mir da etliche beispiele angesehen und tutorials und und und und...
    ich habe die dateistruktur erstellt. die config.php und die database.sql hab ich auch erstellt.

    ich bin schon soweit, dass ich in typolight mein modul als contentelement einfügen kann.
    dort kann ich meine daten eingeben und die zu downloadende datei auswählen.

    somit müssten dann diese daten auch in meine datenbank geschrieben werden.


    nun komme ich aber nicht weiter.

    wie kann ich jetzt den code da oben in meine TL-modul-datei einfügen, damit ich im frontend diese daten abgreifen kann?

    das formular wird sicher in die template-datei geschrieben.
    aber dieses formular muß eben den im frontend eingegebenen code mit einem code aus der datenbank abgleichen und dann entweder den download anzeigen oder eine fehlermeldung.
    außerdem soll der counter -1 gerechnet werden und wenn er bei null ist, soll ebenfalls eine fehlermeldung erscheinen.

    das wird sicher durch if/else passieren. aber wie genau muß das aussehen und an welche stelle kommt was?


    andi
    Geändert von andi-bar (02.06.2010 um 11:11 Uhr)

  10. #10
    Contao-Nutzer
    Registriert seit
    24.06.2009.
    Beiträge
    174

    Standard

    kann man das thema eventuell verschieben? denn mit dem EFG hat das ja eigentlich jetzt nichts mehr zu tun... denke ich...


    andi

  11. #11
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.559
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von andi-bar Beitrag anzeigen
    kann man das thema eventuell verschieben? denn mit dem EFG hat das ja eigentlich jetzt nichts mehr zu tun... denke ich...
    Hab das Thema jetzt in das Entwicklerforum verschoben.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  12. #12
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard

    Hallo Andi,

    wenn du dir dieses Tutorial anschaust musst du innerhalb von Compile deinen Code einfügen und es dann einfach als Modul einbinden.
    Ich denke in deinem Fall ist es egal ob es ein Contentelement oder Modul ist.

    Die Frage die ich mir noch stelle ist wie du das ganze verwalten/aufbauen willst?
    Wie viele Dateien wird es denn geben?

  13. #13
    Contao-Nutzer
    Registriert seit
    24.06.2009.
    Beiträge
    174

    Standard

    @xchs: vielen dank!

    @Schlauchbeutelmaschine: danke für den tipp.
    die anzahl der dateien ist immer eine einzige pro eintrag.

    soll heißen, es wird eine datei ausgewählt und dazu ein freischaltcode abgelegt. jeder, der diesen code bekommt, kann auf die datei zugreifen.
    eben genau wie "download". nur eben mit freischaltcode.

    wenn man eine andere datei anbieten möchte, wird ein weiterer download mit einem dazugehörigen freischaltcode abgelegt.

    ich kann auch gerne mal einen screenshot von dem modul machen, wie ich es im moment im backende habe.


    andi

  14. #14
    Contao-Fan
    Registriert seit
    12.01.2011.
    Beiträge
    322

    Standard

    Hallo andi,

    ich stehe genau vor der gleichen Aufgabe wie du und wollte fragen ob du hier eine Lösung hast? Wenn ja kannst du mir diese vielleicht geben?

    Vielen Danke

    Gruß

    Bongartz120

Aktive Benutzer

Aktive Benutzer

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

Ähnliche Themen

  1. Antworten: 12
    Letzter Beitrag: 20.04.2014, 23:15
  2. Dateidownload mit Passwortschutz
    Von valuser im Forum Bilder/Dateien
    Antworten: 6
    Letzter Beitrag: 03.01.2010, 10:56
  3. Freischaltung von neu registrierten Mitgliedern erst durch Admin freigeben.
    Von hessmedien im Forum Geschützte Bereiche/Mitglieder
    Antworten: 3
    Letzter Beitrag: 13.08.2009, 10:59
  4. zugang verbaut durch falsche eingabe im backend
    Von Sören im Forum Sonstiges zu Contao
    Antworten: 12
    Letzter Beitrag: 26.07.2009, 09:54

Lesezeichen

Lesezeichen

Berechtigungen

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