Visualizzazione risultati 1 fino 6 di 6

Discussione: Un contatore per i download

  1. #1
    Guest

    Question Un contatore per i download

    Ciao a tutti, sono nuovo del forum, ma confido in voi per eliminare molti dubbi che ho :sadOLD:
    Ho creato un sito web qui su altervista, tutto in html. Ora mi è venuta un idea ma non so se è possibile attuarla (visto ke non sono buono :winkOLD: ) o se per farlo cosa mi serve...

    Ecco vorrei mettere un contatore di quante volte un file viene scaricato...

    Come devo fare?? Sxo ke la risposta non sia php xke non saprei da dove iniziare Esiste un metodo semplice (cosi ke anke io ci riesco)?

    E magari oltre a tenere il conto dei download... non so.. anke il voto dato dal visitatore al file... (e in FUTURO, magari anke i commenti)

    Vi prego aiutatemi

  2. #2
    Guest

    Predefinito

    tutto quello che è hai detto è possibile farlo con PHP (o un altro linguaggio di scripting lato server). se cerchi su http://freephp.html.it/ trovi di sicuro qualche script php già fatto

  3. #3
    L'avatar di Dodi
    Dodi non è connesso Utente storico
    Data registrazione
    16-09-2002
    Residenza
    Milano
    Messaggi
    8,183

  4. #4
    Guest

    Predefinito

    Bene un conta click l'ho trovato... riesco ad usarlo e fare alcune modifiche... ma ho delle difficolta con il percorso di ricerca del file...

    Questo script vuole che i file siano contenuti all'interno della cartella che contiene il file php... ma io il sito l'ho strutturato in modo da avere i file in una directory separata dal html... come faccio a puntare alla cartella che voglio?

    Idem x il contatore.. è possibile ke i file .txt siano nella stessa cartella e non dove c'è la pagina (questo è problema minore^^)

    Vi incollo lo script:

    <?php
    //estensione dei file da scaricare
    $ext = ".zip";

    //nome directory con i file di testo, compreso lo slash / finale
    $counterdir = "count/";

    //controllo che nell'url ci sia il nome del file da scaricare,
    if(isset($_GET['name']) && trim($_GET['name'])) {

    //se il file richiesto esiste, avviene il download
    if (file_exists("$_GET[name]$ext")) {

    header("Location: $_GET[name]$ext");

    //apro il file .txt relativo al download richiesto e lo incremento di 1
    $file = @fopen("$counterdir/$_GET[name].txt","r");
    $count = @fread($file, 100);
    $countplus = ($count + 1);
    @fclose($file);
    $fileb = @fopen("$counterdir/$_GET[name].txt","w");
    @fwrite($fileb, $countplus, 100);
    @fclose($fileb);

    //altrimenti, se il file richiesto non esiste, parte l'email di avviso al webmaster e stampo un messaggio di errore
    } else {

    $_GET['name'] = str_replace(">", "&gt;", $_GET['name']);
    $_GET['name'] = str_replace("<", "&lt;", $_GET['name']);

    $today = date("j F Y G:i");
    $user_ip = "$_SERVER[REMOTE_ADDR]";
    $to = "email@dom.it";
    $subject = "Download non trovato";

    $body = "$user_ip il giorno $today non ha trovato il file $_GET[name]$ext";

    @mail("$to","$subject","$body");

    echo "Il file $_GET[name]$ext non &egrave; disponibile per il download.<br>
    Riprova pi&ugrave; tardi.";

    }

    //altrimenti, se il nome del file non è passato via get, redirect alla pagina principale
    } else {
    header("Location: index.php");
    }
    ?>
    Io di php ci capisco 0!!!

    Grazie x l'aiuto

  5. #5
    Guest

    Predefinito

    Veramente lo script dice che il file txt sta nella cartella count e non obbliga che il file che mi hai dato stia proprio lì... per quanto riguarda i file da scaricare se gli dai il percorso completo di http:// secondo me va ... anche se in una cartella diversa...

    prova.

  6. #6
    Guest

    Predefinito

    Se metto il percorso completo non va, cmq ho risolto in altro modo.

    Altro domanda, posso usare lo stesso conta download x calcolare quante volte viene aperta una pagina? Ho provato ma nn ci riesco... sarà ke di php non capisco nulllaaaa

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •