Tenere traccia dei download con la mail

Con poche righe di script è possibile tenere traccia di chi decide di scaricare un file da un nostro sito. Interessante ad esempio nel caso in cui si dà la possibilità di scricare un progetto che richiederà aggiornamenti futuri. Ad esempio può essere utile chiedere la mail all'utente che decide di scaricare il file, con un form del genere...

HTML:
  1. <form name="DownloadForm"  method="post" action="download.php">
  2.   You Email<input name="email_utente" type="text"><br>
  3.   <input type="submit" name="Submit" value="Download">
  4.   <input name="file" type="hidden"  value="nomefile.zip">
  5. </form>

... che punta al file download.php (simile a questo) il quale si occuperà di far scaricare il file ed inviare la mail dell'avvenuto download.

PHP:
  1. <?php
  2. // recupero i dati e definisco le variabili
  3. $file=$_POST['file'];
  4. $email_utente=$_POST['email_utente'];
  5. $mia_email="mia@email.com";
  6. $oggetto="Download File";
  7. $corpo="Il File ".$file." è stato scaricato da ".$email_utente;
  8.  
  9. // mi invio la mail
  10. mail($mia_email, $oggetto, $corpo);
  11.  
  12. // faccio scaricare il file
  13. $percorso="/var/percorso/directory/download/";
  14. $percorso_file=$percorso.$file;
  15. $dimensione_file=filesize($percorso_file);
  16. header("Content-Type: application; name=".$file);
  17. header("Content-Transfer-Encoding: binary");
  18. header("Content-Length: ".$dimensione_file);
  19. header("Content-Disposition: inline; filename=".$file);
  20. header("Expires: 0");
  21. header("Cache-Control: no-cache, must-revalidate");
  22. header("Cache-Control: private");
  23. header("Pragma: public");
  24. readfile($percorso_file);
  25. ?>

Appunti: implementare eventuali controlli

Altri articoli di interesse

0 Response to “Tenere traccia dei download con la mail”


  • No Comments

Leave a Reply