php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.07.2005, 12:31  
Gast
 
Beiträge: n/a
Standard PHP FTP client

ich suchte eine lösung mit der ein user auf einen ftp-server zugreifen (nur download) ohne das login zu kennen. dann hab ich auf http://www.raditha.com/php/ftp/ ein tutorial gefunden, wie man einen php ftp client erstellt, der das file direkt dem user schickt (ohne auf dem server zwischenzuspeichern). ich hab dann das script so angepasst, dass die login infos statisch vorhanden sind. eigentlich würde alles problemlos funktionnieren ausser der download. wenn ich z.b. eine bilddatei downloade wird der inhalt leicht verändert, was zur zerstörung des files führt. habs im hex-editor angeschaut und herausgefunden, dass anscheinend einige zeichen nicht richtig übertragen werden. ich bin mir nicht sicher woran das liegt. aber ich tippe mal auf den 'pass through'. bei dieser funktion wird das file direkt an den user geschickt. leider versteh ich das script nicht 100%. ich wäre froh um jede hilfe!

Code:
$sock = $ftp->retr(trim($filename));
if($sock)
{
	if($sock)
	{
		$mime_type = (strstr($HTTP_USER_AGENT,'IE') ||
					strstr($HTTP_USER_AGENT,'OPERA'))
			? 'application/octetstream'
			: 'application/octet-stream';

		// finally send the headers and the file
		header('Content-Type: ' . $mime_type);
		header('Expires: ' . $now);

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

		fpassthru($sock);
		exit();
	}
}
else
{
	echo 'file could not be retrieved';
}
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 05.07.2005, 20:13  
Gast
 
Beiträge: n/a
Standard

hm, weiss niemand rat? oder soll ich das problem unter einer anderen abteilung posten? vielleicht kennt auch jemand eine andere php-ftp-client lösung, die beim downlod die files nicht zwischenspeichert... danke für eure hilfe
  Mit Zitat antworten
Alt 05.07.2005, 20:49  
Gast
 
Beiträge: n/a
Standard

Ich hatte das Problem mit den MIME-Types (siehe meinen Thread bzgl. Download). Das dürfte aber eigentlich nicht das Problem sein.

Ist es bei allen Dateitypen so oder nur bei bestimmten?
  Mit Zitat antworten
Alt 05.07.2005, 21:46  
Gast
 
Beiträge: n/a
Standard

also ich hab jetzt mit dem mime-type herumexperimentiert und herausgefunden, dass es nicht daran liegen kann. ich vermute es hängt mit dem zeichensatz oder mit der bin/ascii übertragung zusammen, denn ich hab folgendes ausprobiert:
file mit inhalt:

abcdefghijklmnopqrstuvwxyz
öüäéÃ*è
+"*ç%&/()=?

hochgeladen. nach dem download befand sich nach jeder zeile (vor jedem zeilenumbruch) ein "kästchen" (symbol, das nich angezeigt werden kann). anscheinend werden zum beispiel zeilenumbrüche nicht richtig übermittelt...
  Mit Zitat antworten
Alt 06.07.2005, 13:19  
Erfahrener Benutzer
 
Registriert seit: 01.12.2003
Beiträge: 4.113
supertramp
Standard

anscheinend bennutzt du Windows und 'Editor' als editor.
der kann mit den Zeilenumbrüchen nicht umgehen (weil Windows....)

nimm Wordpad und es geht.
__________________
Aufstrebend, kompetent und werbefrei.
www.developers-guide.net
supertramp ist offline   Mit Zitat antworten
Alt 06.07.2005, 13:45  
Gast
 
Beiträge: n/a
Standard

ähm nein.

ich benutze ultra edit!

edit: vielleicht hab ich die tatsache, dass das problem erst NACH dem download über das script bestebt nicht verständlich erwähnt. zuerst ist die datei in ordnung, nach dem download sind die zeilenschaltungen nicht mehr richtig vorhanden (ue fragt, ob die datei ins dos-format konvertiert werden soll)
  Mit Zitat antworten
Alt 06.07.2005, 15:55  
Erfahrener Benutzer
 
Registriert seit: 01.12.2003
Beiträge: 4.113
supertramp
Standard

ok, dann versuch es mal mit einem anderem editor - es liegt daran, dass der Unix-Rechner (Server) die Zeilenumbrüche anders behandelt als dein Windows.
__________________
Aufstrebend, kompetent und werbefrei.
www.developers-guide.net
supertramp ist offline   Mit Zitat antworten
Alt 06.07.2005, 16:02  
Erfahrener Benutzer
 
Registriert seit: 25.04.2005
Beiträge: 1.356
HStev zeigte ein beschämendes Verhalten in der Vergangenheit
Standard

Ultra Edit kann Windows Zeilenumbrüche nach Unix konvertieren das reicht meistens schon
HStev ist offline   Mit Zitat antworten
Alt 06.07.2005, 16:26  
Gast
 
Beiträge: n/a
Standard

vielen dank für die hilfe. ich muss es nachher testen. leider tritt das problem ja nicht nur bei txt dateien auf, sondern z.b. auch bei jpg. es ist natürlich recht mühsam nach einem download jede datei umzukonvertieren...
  Mit Zitat antworten
Alt 06.07.2005, 17:45  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

http://de2.php.net/manual/en/function.ftp-get.php
FTP_BINARY als mode wäre wohl sinnvoll.
__________________
mod = master of disaster
Waq ist offline   Mit Zitat antworten
Antwort


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
Script ausführen, auch wenn Client schließt DarkManX PHP Tipps 2007 1 20.05.2007 23:32
Zum eigenen Lernen: FTP Client für Filezilla dh1sbg PHP Tipps 2007 1 09.04.2007 10:57
Bildschirmschoner auf dem Client beenden superbike PHP-Fortgeschrittene 11 31.10.2006 19:54
Client does not support authentication protocol... snoopiline Datenbanken 3 19.07.2006 13:53
.htaccess und FTP Client dh1sbg Off-Topic Diskussionen 7 28.06.2006 21:14
ICQ Client für Nokia 6020 Off-Topic Diskussionen 2 18.12.2005 19:45
Client Problem Datenbanken 7 09.12.2005 14:38
Stabilität von SOAP (client) unter PHP5 ? Infos gesucht. PHP-Fortgeschrittene 5 13.09.2005 07:01
per Javascript exe auf Client starten HTML, Usability und Barrierefreiheit 16 05.09.2005 14:04
Suche MySQL - Client API Version 4.xx.xx Connar Datenbanken 0 05.03.2005 09:24
Wie kommt die Datei vom Server auf den Client? PHP Tipps 2005 2 25.02.2005 22:18
"Ping"-Skript -> "Ist Client verbunden im PHP-Fortgeschrittene 3 21.02.2005 01:35
[Erledigt] Client does not support authentication protocol requested by Datenbanken 0 11.12.2004 11:44
HTML file an client senden PHP Tipps 2004 4 11.09.2004 15:09
daten von client auf den server kopieren PHP Tipps 2004 4 23.06.2004 15:27

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php ftp download, php ftp client, php ftp client download, php ftp client tutorial, ftp download php, ftp client php tutorial, ftp php download, php ftp download client, php ftp client script, php ftp lösung, php ftp downloader, phpftp download, phpftpclient, php ftp, ftp client php, php ftp download to client tutorial, php ftp editor, http://www.php.de/php-fortgeschrittene/25880-php-ftp-client.html, php download ftp, php ftp download script

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