Ergebnis 1 bis 1 von 1
  1. #1
    PRINZ ist offline Lounge-Member
    registriert
    03-08-2001
    Ort
    Leipzig
    Beiträge
    2.089

    [php][htaccess] counter

    funktionalität:
    zählt jeden download von dateien.
    sinnvoll wenn user von fremden seiten/programmen direkte downloads tätigen
    oder wenn bereits zuviele links direkt auf dateien deiner website verweisen
    zb bei bildern, musik-files, gepackenten daten etc.
    das script ist unnötig wenn bereits downloaddaten direkt über ein script
    versendet bzw verwaltet werden.

    umfang des tuts:
    anleiteung zur vorgehensweise und grundgerüst.
    (kein fertiges script)

    grundlagen:
    php
    htaccess (apacheserver)
    keine datenbank
    schwierigkeitsgrad: anfänger

    dateien :
    .htaccess
    counter script - rechte zum ausführen
    download zähler datei - rechte zum schreiben
    originaldatei
    dummy datei

    schritt 1:
    die dummy datei erstellen
    es reicht wenn ihr ein leeres textdukument erstellt und es entsprechend mit
    oder ohne endung umbenennt.
    bsp:
    musikdatei.mp3 ( echtes file )
    musikdatei.MP3 ( dummy file )

    (wenn ihr schon zuviel/nicht änderbare links im web direkt zur datei habt
    muß das dummyfile den orginalnamen bekommen)

    schritt 2:
    die htaccess datei erstellen:
    diese legt ihr in der niedrigsten ordnerebene eurer domain an.
    in die ".htaccess" datei (der punkt gehört zum namen)
    wird eine einfache umleitung zu einen counter notiert.
    nemen wir mal an die mp3 datei befindet sich im ordner musik,
    bsp www.domain.de/musik/musikdatei.mp3
    und das counter script haben wir einfacherweise auch dort.
    dann würde die umleitung wie folgt aussehen:
    Code:
    #1
    Redirect permanent /musik/musikdatei.MP3 http://www.domain.de/musik/counter.php?track=www.domain.de/musik/musikdatei.mp3
    was passiert dort?
    in euren links zum download solltet ihr auf die dummydatei verweisen
    (im beispiel das mit der großgeschriebenen endung)
    denn nur diese datei wird dann auf abfragen jeglicher art geprüft und
    umgeleitet. würde man die orginale datei umleiten würde man sie nie
    downloaden können.
    in der weiterleitung wird auf die counter.php verwiesen und eine variable
    "track" erhält den eigentlichen download link

    schritt 3:
    das counterscript mit umleitung zur orginaldatei:
    Code:
    <?php
    //==============> bindet die downloads.php ein 
    //==============> damit man auf dessen variable zugreifen kann
    include("downloads.php");
    
    //==============> der wert der variable wird um eins erhöht
    $downloads++;
    
    //==============> erstellt den richtigen php code für die datei
    //==============> der in der downloads.php gespeichert wird
    $daten="<"."?php ".
    "$"."downloads = ".$downloads.";".
    "?".">";
    
    //==============> speichert die daten
    $fp = fopen("downloads.php","w+");
    fputs($fp,$daten);
    fclose($fp);
    
    //==============> weiterleitung zur datei
    header("Location: $track");
    exit();
    ?>
    was passiert?
    es wird die datei downloads eingebunden, in der ist ein variable "$downloads"
    bsp für den inhalt der downloads.php
    Code:
    <?php 
    $downloads=0;
    ?>
    ( logischerwise muß man die dann auch dort einbinden wo man diese
    variable und dessen wert einbinden möchte )
    diese wird nun um eins erhöht.
    danach wird der neue source code für die datei erstellt und gespeichert.
    mit 'header("Location: $track");' und "exit();" wird dann zur in der
    variable $track gespeicherten adresse
    (welche in der htaccess datei angegeben wurde) umgeleitet.
    dann noch die rechte vergeben und fertig ist das grundgerüst.

    A C H T U N G !
    dieses script sollte man nicht so verwenden wie es hier steht,
    über das counterscript kann man über die variable track jegliche datei angeben und herunterladen.
    tip: legt im script eine liste an mit den dateienname/verweisen etc die geladen werden dürfen.
    desweiteren sollte in den fertigen script die prüfung nicht fehlen ob download.php und die downloaddatei überhaupt vorhanden sind.


    für komplexere ausbaumaßnamen fragt hier im forum für serverseitige programmierung um hilfe.


    ich danke für tips und verbesseungsvorschläge
    grüße Prinz
    Geändert von PRINZ (23-07-2007 um 21:17 Uhr)

Ähnliche Themen

  1. Mehrfach aufrufbarer laufender Counter
    Von Hawk18x im Forum JavaScript
    Antworten: 0
    Letzter Beitrag: 25-11-2005, 12:23
  2. Counter funktioniert nicht mehr
    Von KV3000 im Forum Allgemeines
    Antworten: 2
    Letzter Beitrag: 10-09-2005, 18:47
  3. Counter mit mehreren funktionen (script)
    Von pc-nation.org im Forum Serverseitige Programmierung
    Antworten: 1
    Letzter Beitrag: 21-06-2005, 19:42
  4. *Suche* Das etwas andere counter script
    Von busta im Forum Serverseitige Programmierung
    Antworten: 6
    Letzter Beitrag: 29-04-2005, 21:04
  5. Counter
    Von H34d im Forum Serverseitige Programmierung
    Antworten: 3
    Letzter Beitrag: 11-09-2003, 17:36

Lesezeichen

Berechtigungen

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