WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik


Homepage und Webhosting-Forum

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.


Forum » PHP & MySQL » Dateien direkt downloaden » Antworten
Benutzername:
Passwort: Passwort vergessen?
Inhalt der Nachricht: Fett | Kursiv | Unterstrichen | Link | Bild | Smiley | Zitat | Zentriert | Quellcode| Kleiner Text
Optionen: Emailbenachrichtigung bei Antworten
 

Die letzten 5 Postings in diesem Thema » Alle anzeigen
von subjective
Der Download sollte immer angeworfen werden, mit dem Dateinamen habe ich recht selten noch Probleme bekommen. Diese kann man anscheinend nur mit einem URL-Rewrite komplett ausschließen.
von languitar
ist aber auch nicht hunderprozentig sicher, dass es funktioniert...
von subjective
Damit der Browser auch "darstellbare" Daten zum Download anbietet, muss man ihm einige HTTP-Header schicken. Leider ist das je nach Browser leicht verschieden:

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27:
<?php
function download_headers($filename) {
  $agentstr = getenv('HTTP_USER_AGENT');
  if (eregi('opera', $agentstr)) {
    $agent = 'OPERA';
  } elseif (eregi('msie', $agentstr)) {
    $agent = 'IE';
  } else {
    $agent = 'STD';
  }
  $mime_type = ($agent == 'IE' || $agent == 'OPERA')
    ? 'application/octetstream'
    : 'application/octet-stream';

  header('Content-Type: ' . $mime_type);
  if ($agent == 'IE') {
    header('Content-Disposition: inline; filename="'.$filename.'"');
    header('Expires: 0');
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    header('Pragma: public');
  } else {
    header('Content-Disposition: attachment; filename="'.$filename.'"');
    header('Expires: 0');
    header('Pragma: no-cache');
  }
}
?> 


Nach dem Aufruf dieser Funktion, kann man dann die eigentlichen Daten der Datei ausgeben.
von Herr_Zatacke
languitar schrieb am 28.06.2005 23:54
zippen... alles andere kann nen browser umgehen, wenn er richtg (oder falsch) eingestellt ist.

Oder anders gesagt: lass doch deine Besucher selbst enstscheiden, wie sie was sehen wollen.
von languitar
zippen... alles andere kann nen browser umgehen, wenn er richtg (oder falsch) eingestellt ist.

Nach oben