php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.10.2005, 20:28  
Benutzer
 
Registriert seit: 22.09.2005
Beiträge: 44
ZeHa
Standard Download einer Datei von Fremd-Server

Hallo!

Hab hier neulich schonmal gepostet bzgl. Datei-Download. Mir wurde die readfile_chunked()-Funktion angeboten, und die funktioniert auch tadellos.

Ich hab nun aber ein Problem - die Funktion funktioniert nur dann, wenn sich die Datei auf dem selben Server befindet. Wenn ich als Download-URL eine komplett andere Adresse angebe, läuft das ganze nicht.

Wichtig: Ich hab bei der Download-URL auch das "http://" mit angegeben, und ich hab mein Skript so geschrieben, daß die URL letztendlich korrekt ist (eigentlich wird im Beispiel die URL zusammengesetzt aus Download-Ordner und Filename, das wird bei mir aber im Falle eines vorhandenen "http://" nicht gemacht). Hab mir den Download-Link dann auch mal per echo ausgeben lassen, der ist absolut korrekt.

Geht das generell nicht mit anderen Servern? Oder mach ich doch irgendwas falsch?

Was mir noch aufgefallen ist: es steht unten in meiner Statusleiste trotzdem dran: "sende Anfrage an localhost" und nicht etwa der Server, auf dem sich die Datei befindet...

Schöne Grüße und vielen Dank
ZeHa
ZeHa ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 08.10.2005, 15:03  
Benutzer
 
Registriert seit: 22.09.2005
Beiträge: 44
ZeHa
Standard

Hat wirklich keiner 'ne Idee?
ZeHa ist offline  
Alt 08.10.2005, 15:23  
Gast
 
Beiträge: n/a
Standard

was willst du überhaupt machen? Kenne deinen anderen Thread nicht!
 
Alt 08.10.2005, 15:27  
Benutzer
 
Registriert seit: 22.09.2005
Beiträge: 44
ZeHa
Standard

Im Grunde geht es darum, daß man sich bei meinem Skript einloggen kann um sich Dateien runterzuladen. Das funktioniert auch bisher tadellos, da ich eben die readfile_chunked()-Funktion benutze (vorher wurden Dateien ab 'ner bestimmten Größe oder Zeit einfach abgebrochen).

Nun funktioniert alles, der User loggt sich ein und klickt 'nen Link an, der ihm dann die Datei serviert. Und zwar so, daß er den eigentlichen Datei-Link nicht mitkriegt.

Das Problem ist jetzt nur, daß es eben nicht funktioniert, wenn sich die Datei auf 'nem anderen Server befindet wie das php-Skript. Das will ich aber hinkriegen, da ich viel Webspace habe mit viel Traffic, wo aber kein php-Skript läuft. Somit muß das Skript auf 'nen anderen Space, und von dort muß es dann zugreifen auf den großen Webspace. Aber das klappt irgendwie nicht...
ZeHa ist offline  
Alt 08.10.2005, 16:02  
Gast
 
Beiträge: n/a
Standard

Hallo,

kannst du denn mit anderen Funktionen (fopen() etc.) Dateien auf anderen Servern öffnen.
Wenn das auch nicht geht, ist vermutlich die Option allow_url_fopen in der php.ini ausgeschaltet.

Viele Grüße,
karl-150
 
Alt 09.10.2005, 11:55  
Benutzer
 
Registriert seit: 22.09.2005
Beiträge: 44
ZeHa
Standard

Danke für den Tip! Hab aber nachgeschaut, und es war überall "On". Also kann es daran nicht liegen...

Mann wieso geht das nicht....
ZeHa ist offline  
Alt 09.10.2005, 13:24  
Gast
 
Beiträge: n/a
Standard

Natürlich wird die Anfrage nicht von vem Browser an den Fremderver gesendet. Die Datei wird ja von PHP includet (also serverseitig, davon merkst du im Browser gar nix)

Wenn bei dir das läuft (wenn nicht :wink: , dann viel Spaß ):
PHP-Code:
<?php
$fp 
fopen('http://www.phpfriend.de','rb');
while (!
feof($fp)) echo fread($fp1);
fclose($fp);
?>
Dann sollte es das auch tun:
PHP-Code:
<?php
function readfile_chunked(...) {
  ...
}
readfile_chunked('http://www.phpfriend.de');
?>
 
Alt 12.10.2005, 18:47  
Benutzer
 
Registriert seit: 22.09.2005
Beiträge: 44
ZeHa
Standard

Leider ging auch das nur halb. Beim ersten Fall wurde die Seite geöffnet, aber ohne daß auf Sachen wie Stylesheet oder so Rücksicht genommen wurde. Sah also alles sehr komisch aus.

Beim zweiten ging es nicht, sprich es kam überhaupt nix (außer einer leeren Seite).

Aber ich kann euch ja mal zeigen, was dann letztendlich IN der Datei drinsteht, die mir das Skript übergibt (wenn ich die von mir gewünschte Datei öffnen will):

Warning: filesize() [function.filesize]: stat failed for <<<pfad der zieldatei>>> in download.php on line 102
ZeHa ist offline  
Alt 12.10.2005, 19:29  
Gast
 
Beiträge: n/a
Standard

du kannst über http kein filesize verwenden, würdest du die version von php.net [da hab ich die nachgesehen, und die tuts auch] benutzen, hättest du das problem nicht
dass die stylesheets nicht richtig angezeigt werden ist doch klar, wenn die seite mit relativen pfaden arbeitet

/edit: sry, ab php5 schon
 
Alt 12.10.2005, 19:46  
Benutzer
 
Registriert seit: 22.09.2005
Beiträge: 44
ZeHa
Standard

Wenn ich die Filesize-Funktion weglasse, geht's aber auch nicht richtig. Es kommt zwar letztendlich die Datei an, aber wie es scheint, liest er erstmal alles in den Cache und frägt DANN erst, ob man nun öffnen oder speichern will. Nun ist der Download bereits beendet, die Datei wird dann auch korrekt abgespeichert, aber es ist ja blöd wenn der User evtl. minutenlang warten muß, bis der Browser endlich mal sagt, was Sache ist...

Das Skript sollte halt so funktionieren, daß jeder User die Datei downloaden kann, also sollte alles auch schön reibungslos ablaufen wie auf anderen Download-Seiten auch. Momentan fällt mir als Lösung eben nur ein, das alles auf einem einzigen Server zu machen, aber da weiß ich noch nicht, ob ich das so hinkriege (nicht vom Programmieren her)...

Hast Du evtl noch 'ne Idee?
ZeHa ist offline  
 


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
Datei Formulardaten auf anderem Server ablegen cytrobic PHP Tipps 2006 3 03.08.2006 14:50
Download bietet die falsche Datei an PHP Tipps 2006 14 05.03.2006 13:22
Datei zeigen, aber nicht zum Download freigeben CSS PHP-Fortgeschrittene 17 12.01.2006 17:30
parst php datei nicht auf dem server PHP Tipps 2007 3 29.11.2005 21:04
Datei erstellen auf dem Server? PHP Tipps 2007 3 28.11.2005 17:18
download vom server geht nicht PHP Tipps 2005-2 8 18.09.2005 20:48
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Datei auf einen anderen Server laden Borlox PHP Tipps 2005 3 25.04.2005 20:12
prüfen ob eine datei auf einem anderen server besteht. PHP Tipps 2005 13 10.03.2005 08:33
Datei nach download löschen? Calli PHP Tipps 2004-2 1 26.11.2004 10:05
existenz einer datei auf einem anderen server prüfen PHP Tipps 2004-2 2 19.11.2004 09:05
fehler beim öffnen einer php3 Datei auf dem Server !? PHP Tipps 2004 5 04.11.2004 19:25
Datei vom Server auslesen PHP Tipps 2004 3 21.10.2004 15:37
Serv U FTP Datei download mit PHP PHP Tipps 2004 6 26.08.2004 12:42
datei auf server verschieben? PHP Tipps 2004 4 18.08.2004 16:00

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
vem datei öffnen, php readfile_chunked, dateien von server herunterladen, kein php auf fremdserver, filesize vom fremd server php, http datei mit php downloaden auf server, download von einem anderen server php, php datein vem server downloaden, dateien von einem server herunterladen, php bild auf fremdserver vorhanden, php download anderer server url, fremd server, php datei von anderem server laden, ph download von anderen server, download webseite auf fremdserver, file_exist fremdserver, datei von fremdserver mit eigener url, eine datei auf einen anderen server downloaden php, wie dateien von einem server downloaden, download wurde fremd

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:53 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.