Externe Downloadanfrage abfangen und erst nach Userbestätigung ausführen.

  • #1
S

salamipizza

Neues Mitglied
Themenersteller
Dabei seit
17.11.2009
Beiträge
2
Reaktionspunkte
0
Hallo, da ich in der SuFu und bei Google keinen Erfolg hatte, frage ich mal direkt:

Wie kann man es hinkriegen, dann wenn jetzt jmd einen Link auf die Datei eine-datei.exe hat und die Datei über den Link runterladen will, dass er auf eine Seite umgeleitet wird mit einem Standardtext zum Rechtlichen, wo er erst einen Haken setzen muss, um den Download ausführen zu können? Wichtig dabei ist, dass der Link Original zur Datei erhalten bleibt und dass nur über einen Referer Check erledigt wird ! oder geht sowas evtl. mit htaccess ??

vielen dank im vorraus ;)
 
  • #2
Hallo Du mit dem seltsamen Nick ;) ,

ja, wie Du schon vermutest hast, das geht mit .htaccess . Voraussetzung ist allerdings ein aktiviertes Modul mod_rewrite und PHP, probier meinen Code einfach mal aus... .

Datei: .htaccess
Code:
RewriteEngine on
RewriteRule datei.zip$ beschreibung.php

Der Dateiname ist hier datei.zip und weitergeleitet wird auf die Datei beschreibung.php, beide Dateinamen können angepasst werden.

Datei: beschreibung.php
Code:
<?php
$dateiName = datei.zip;
$dateiMitPfad = ./datei.zip; 
if ($_POST[check] == true) {
  header(Content-Type: x-type/x-subtype);
  header(Content-Disposition: attachment; filename=.$dateiName);
  readfile($dateiMitPfad);
}
?>
<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN [url]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>[/url]
<html xmlns=[url]http://www.w3.org/1999/xhtml[/url] xml:lang=en lang=en>
<head>
	<meta http-equiv=content-type content=text/html; charset=iso-8859-1 />
	<meta name=author content=Dirk W. />
	<title>Beschreibung</title>
</head>

<body>

<div id=wrapper>
  Hier kommt Deine Beschreibung... <br /><br />
  
  <form accept= method=post>
    <input type=checkbox name=check value=true />
    <input type=submit value=Download name=Download />  
  </form>
</div>

</body>
</html>

Am Anfang dieses Scripts wird der Dateiname festgelegt und der Dateiname mit Pfad. Nur wenn die Checkbox aktiviert ist, startet der Download. - Warum? Weil PHP die .htaccess Beschränkung aufheben kann indem es intern zu der Datei weiter leitet und einen Download Header generiert. <- soviel zur Theorie :)

Bedenke das die 3 Angaben des Dateinamens identisch sein müssen!

Mfg.
Dirk

edit: so ich geh jetzt was essen, Salami Pizza klingt gut ;D
 
Thema:

Externe Downloadanfrage abfangen und erst nach Userbestätigung ausführen.

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben