php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.03.2005, 19:26  
Erfahrener Benutzer
 
Registriert seit: 06.08.2003
Beiträge: 453
PHP-Kenntnisse:
Fortgeschritten
Mano
Standard Dateidownload

Bei folgendem Script klappt der Download von Dateien nicht. Ich erhalt zwar eine Fenster "Dateidownload" jedoch sind die Dateien beschädigt wenn diese heruntergeladen wurden.

Bei einigen ist allerdings auch gar kein Zugriff möglich, da erhalte ich "Seite kann nicht angezeigt werden".

Wo liegt der Wurm in diesem Script??

PHP-Code:
<?php
  
if(isset($_GET['ID'])) {
  
  
// Downloadverzeichnis
  
$basedir "/kunden/xxxx/downloads/";
  
  
// Dateinamen aus der Datenbank auslesen
  
$sql  mysql_query("SELECT Dateiname FROM $db_downloads WHERE Id LIKE '".$_GET['ID']."'") OR die(mysql_error());
  
$data mysql_fetch_object($sql);

  
// Vertrauenswürdigen Dateinamen basteln.
  
$filename sprintf("%s/%s"$basedir$data->Dateiname);
  
  
// Passenden Datentyp erzeugen.
  
header("Content-Type: application/octet-stream");

  
// Passenden Dateinamen im Download-Requester vorgeben, z. B. den Original-Dateinamen
  
$save_as_name basename($data->Dateiname);
  
header("Content-Disposition: attachment; filename=\"$save_as_name\"");

  
// Datei ausgeben.
  
readfile($filename);  
  
  } 
  
?>

<html>

//usw ...

<? echo "<a href=\"".$PHP_SELF."?".session_name()."=".session_id()."&ID=".$data_download->Id."\" target=\"_blank\">download</a>"?>
Mano ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 21.03.2005, 20:35  
Erfahrener Benutzer
 
Registriert seit: 06.08.2003
Beiträge: 453
PHP-Kenntnisse:
Fortgeschritten
Mano
Standard

Hat niemand eine Idee?
Mano ist offline  
Alt 21.03.2005, 20:41  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

wie kommen denn die dateien hoch? sicher dass sie online nicht vieleicht schon kaputt sind ?

bzw. kann man es mal online irgendwo testen :P

mfg
robo47
robo47 ist offline  
Alt 21.03.2005, 20:49  
Erfahrener Benutzer
 
Registriert seit: 06.08.2003
Beiträge: 453
PHP-Kenntnisse:
Fortgeschritten
Mano
Standard

Nein kann man nicht, leider *g* ... Die Dateien sind natürlich nicht kaputt, da ein Direkter Download über FTP funktioniert!

Das liegt wo anders dran!!!
Mano ist offline  
Alt 21.03.2005, 20:53  
Gast
 
Beiträge: n/a
Standard

Zitat:
jedoch sind die Dateien beschädigt wenn diese heruntergeladen wurden.
Wie genau ?
Kannste das vieleicht genauer Beschreiben ?
 
Alt 21.03.2005, 20:59  
Erfahrener Benutzer
 
Registriert seit: 06.08.2003
Beiträge: 453
PHP-Kenntnisse:
Fortgeschritten
Mano
Standard

Auf meinem Homeserver, klappt der Download eines .xls Dokumentes nicht und auf dem Webserver im Netz nur ein Download eines .pdf Dokumentes, der auf meinem Homeserver klappt!
__________________
www.webdeveloperfactory.de - Der Blog und Ratgeber für Webentwickler mit zahlreichen Informationen
Mano ist offline  
Alt 21.03.2005, 21:09  
Gast
 
Beiträge: n/a
Standard

So richtig bin ich jetzt nicht schlau geworden

Und was ist der Unterschied zwischen $filename und $save_as_name bei dir ?
Der Dateiname sollte eigentlich gleich sein, zb. uhu.xls oder so.
Denke mal, dass haste schon überprüft ?
 
Alt 21.03.2005, 21:15  
Erfahrener Benutzer
 
Registriert seit: 06.08.2003
Beiträge: 453
PHP-Kenntnisse:
Fortgeschritten
Mano
Standard

Der Download von den Dateien funktioniert jetzt wieder ... sehr komisch ...

Jedoch habe ich jetzt noch ein anderes Problem. Wenn ich den Downloadlink nicht in einem neuen Fenster öffnen lasse und beispielweise in _self öffne tritt etwas komisches auf. Da diese Seite leider mit Frames gebaut worden ist, und die Downloadseite in einem der Frames enthalten ist, passiert es nach einem erfolgreichen download das die Links (Das Menü der Seite) in einem anderen Frame nicht mehr funktionieren. Der Browser reagiert darauf nicht!
__________________
www.webdeveloperfactory.de - Der Blog und Ratgeber für Webentwickler mit zahlreichen Informationen
Mano ist offline  
Alt 21.03.2005, 21:22  
Erfahrener Benutzer
 
Registriert seit: 06.08.2003
Beiträge: 453
PHP-Kenntnisse:
Fortgeschritten
Mano
Standard

Jetzt gehts alles ... *g* ... der Webserver kam mit den Headern durcheinander hab zum Schluss einfach nen die() gemacht :wink:
__________________
www.webdeveloperfactory.de - Der Blog und Ratgeber für Webentwickler mit zahlreichen Informationen
Mano ist offline  
Alt 22.03.2005, 09:40  
Gast
 
Beiträge: n/a
Standard

Zitat:
Der Browser reagiert darauf nicht!
Du kannst auch dein Download-Script als extra Datei laufen lassen, z.B. save.php oder so.
Übergibst dann nur noch die ID etc.
Die Datei selber kannste mit "_blank" aufrufen, dann tritt dieser Effekt nicht auf.
Es öffnet sich dann kurz ein Browser-Fenster, geht aber wieder zu mit öffnen vom Download-Fenster.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problem bei Dateidownload via PHP Script niffi PHP-Fortgeschrittene 7 01.06.2007 19:39
dateidownload mit limit für große dateien imported_kremser PHP Tipps 2007 6 25.04.2007 16:27
Dateidownload aus Datenbank Problem beim IE, Headerprobleme? tomx992 PHP-Fortgeschrittene 3 25.09.2006 22:41
Dateidownload per PHP Daskaras PHP Tipps 2006 14 12.05.2006 19:50
content-type bei dateidownload Stinger PHP-Fortgeschrittene 4 02.03.2006 09:00
URL bei Dateidownload unsichtbar machen ZeHa PHP Tipps 2005-2 12 23.09.2005 16:51
Dateidownload - Filenamen verbergen?! PHP Tipps 2005-2 9 08.08.2005 22:08
Dateidownload ohne Zwischenspeichern PHP Tipps 2005-2 12 13.07.2005 10:23
Dateidownload aus Datenbank tomx992 PHP-Fortgeschrittene 10 04.02.2005 18:41
header für Dateidownload robo47 PHP Tipps 2004-2 5 08.11.2004 13:22
Dateidownload per Script klappt nur teilweise? PHP Tipps 2004 2 25.10.2004 11:50
dateidownload PHP Tipps 2004 17 09.09.2004 20:03
[Erledigt] fenster dateidownload beim öffnen eine php seite &lt;-- hilf Server, Hosting und Workstations 7 16.07.2004 16:45
Dateidownload nicht mehr möglich! PHP Tipps 2004 3 09.06.2004 10:51

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
$basedir = \/kunden/xxxx/downloads, $basedir = \/kunden/xxxx/downloads/\;, $sql = mysql_query(\select dateiname from

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:23 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.