Probleme mit ftp_get() PHP

Bash, Shell, PHP, Python, Perl, CGI
jake
Posts: 26
Joined: 2003-11-14 02:14

Probleme mit ftp_get() PHP

Post by jake »

Hallo :-)
ich habe folgendes Problem mit ftp_get()
Ich habe ein Webserver. Von diesen aus will ich auf ne debiankist zugreifen und ein file per ftp holen.
mein phpcode ist so:

Code: Select all

$download = ftp_get($conn_id, "./tmp/hallo.jpg", "/tmp/hallo.jpg", FTP_BINARY);
ich bekomme dann aber folgende meldung:
Warning: ftp_get() [function.ftp-get]: Error opening ./tmp/hallo.jpg

Folgendes habe ich schon geprüft
$conn_id ist gefüllt, also hab ich ne ftp connection
auf dem Webserver existiert ./tmp
und auf der debi kist gibt es das bild auch. es hat chmod 777.

würde mich über schnelle hilfe freuen ;)
mfg
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin

Re: Probleme mit ftp_get() PHP

Post by flo »

Hi,

damit hatte ich auch mal Probleme - beim Debuggen hat es dann plötzlich funktioniert, als ich Einzelschritte daraus gemacht habe und in das jeweilige Verzeichnis gewechselt bin, bevor ich das Bild geholt habe.

Grüße,

flo.
jake
Posts: 26
Joined: 2003-11-14 02:14

Re: Probleme mit ftp_get() PHP

Post by jake »

huhu :-)

das ist noch ne gute idde :-) danke dir *gg gleich mal test ;.)

mfg
jake
Posts: 26
Joined: 2003-11-14 02:14

Re: Probleme mit ftp_get() PHP

Post by jake »

geht leider immer noch need ...

hab jetzt mal zum testen ftp_put gemacht .... ging auch need :(
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin

Re: Probleme mit ftp_get() PHP

Post by flo »

Prüf doch mal am Server, was gemacht wird und ob es Fehler im FTP-Log oder im syslog gibt, mit FTP habe ich üblicherweise weniger Probleme als mit Uploads ...

flo.

EDIT: folgender Code funktioniert, das vorhandensein der Datei "index.php" im aktuellen Verzeichnis vorausgesetzt:

Code: Select all

<?
error_reporting(9);

$ftp_server = "localhost";
$ftp_user_name = "user";
$ftp_user_pass = "pass";

$source_file = "index.php";
$destination_file = "test2.php";


// Herstellen der Basis-Verbindung
$conn_id = ftp_connect($ftp_server); 

// Einloggen mit Benutzername und Kennwort
$login_result = ftp_login($conn_id, "$ftp_user_name", "$ftp_user_pass"); 

// Verbindung überprüfen
if ((!$conn_id) || (!$login_result)) { echo "Ftp-Verbindung nicht hergestellt!"; die; } else { echo "Verbunden mit " . $ftp_server  . " als Benutzer " . $ftp_user_name; };

echo "<BR><BR>n";

//Upload
$upload = ftp_put($conn_id, "$destination_file", "$source_file", FTP_BINARY);
if (!$upload) { echo "Ftp upload war fehlerhaft!"; } else { echo "Datei $source_file auf $ftp_server als $destination_file geschrieben"; };

// Schliessen des FTP-Streams
ftp_quit($conn_id); 
?>
Den Originalcode habe ich von php.net ...

Hab übrigens auch erst bei der Gelegenheit gemerkt, daß ich ftp nciht im PHP hatte, --with-ftp sollte halt auch --enable-ftp heißen. :-(