ftp_ssl_connect

Alles, was PHP betrifft, kann hier besprochen werden.

ftp_ssl_connect

Postby anselm » 26. January 2009 10:34

Hallo Forum,

hat sich von Euch schon mal einer mit dem Thema ftp_ssl_connect näher befasst?

Meine bisherigen Versuche liefen leider immer auf den Fehler -> Fatal error:Call to undefined function ftp_ssl_connect() hinaus.

Plattform: Win XP - Win2003 Server
XAMPP: 1.7.0
Opensll: ist aktiviert
dll: libeay32.dll und ssleay32.dll sind im /win/system32 Ordner.
php.ini: ;extension=php_openssl.dll auf extension=php_openssl.dll geändert


Ich poste mal das Script mit dem ich arbeite.

$my_user="xxxxxxx";
$my_pwd ="xxxxxxx";
$my_host="xxxx.xxxx.com"; // Verbindung mittels FTP - Port 21
//$my_host="xxxx-ssl.xxxx.com"; // Verbindung mittels FTP/SSL - Port 990

//$ftp = ftp_ssl_connect( $my_host ); // über diesen Weg funktioniert das Script nicht
$ftp = ftp_connect( $my_host ); // über diesen Weg funktioniert das Script
if (! $ftp ) {
echo "keine Verbindung zum Host " . $my_host;
} else {
$res = ftp_login( $ftp, $my_user, $my_pwd );
if (! $res){
echo "login nicht möglich\n";
} else {
echo "login bei <b>" .$my_host.
" </b>erfolgreich\n";
}
if (! $contents = ftp_nlist( $ftp, "." )){
echo"Verzeichnis ungültig
oder nicht lesbar!\n";
} else {
echo
"<br><b>Verzeichnisinhalt:</b><br>\n";
foreach ($contents as $var)
echo $var . "<br>\n";
}
ftp_quit($ftp);
}

P.S. Ich habe mein PHP nicht selbst compelliert!
anselm
 

Re: ftp_ssl_connect

Postby Wiedmann » 26. January 2009 11:21

hat sich von Euch schon mal einer mit dem Thema ftp_ssl_connect näher befasst?

Yup.

Meine bisherigen Versuche liefen leider immer auf den Fehler -> Fatal error:Call to undefined function ftp_ssl_connect() hinaus.

Weil die FTP-Extension ohne SSL-Support compiliert ist.

Je nach dem was du machen willst, ist die FTP-Extension ja aber nicht unbedingt nötig, sondern du kannst einfach die normalen Dateisystemfunktionen benutzen.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: ftp_ssl_connect

Postby anselm » 26. January 2009 11:36

Hallo Wiedmann,

ich will/muss Dateien von einem Rechner auf einen anderen "schieben". Dazu ist es mir vorgeschrieben worden FTP/SSL zu verwenden.

Hier der kurze knappe Ablauf:
Die Datei xyz wird von Maschine A auf Maschine B in Verzeichnis c mittels ftp_put --> Datei xyz wird auf Maschine B zu Datei xyzz verarbeitet.
Die Datei xyzz wird auf Maschine B im Verzeichnis cc bereitgestellt.
Die Datei xyzz wird vom Verzeichnis cc wieder auf Maschine geholt (ftp_get) und dann ausgewertet.

Die funktionalität von ftp_connect + ftp_put etc. fuktioniert ja perfekt.

Nur die Verbindung mittels ftp_ssl_connect ruft diesen Fehler auf.
anselm
 

Re: ftp_ssl_connect

Postby glitzi85 » 26. January 2009 12:02

Tja, dann musst du entweder unverschlüsseltes FTP verwenden oder das ganze doch selber kompilieren. Steht aber auch in der Doku: http://de3.php.net/manual/en/function.f ... onnect.php

ftp_ssl_connect() is only available if both the ftp module and the OpenSSL support is built statically into php, this means that on Windows this function will be undefined in the official PHP builds. To make this function available on Windows you must compile your own PHP binaries.

mfg glitzi
User avatar
glitzi85
 
Posts: 1920
Joined: 05. March 2004 23:26
Location: Dahoim

Re: ftp_ssl_connect

Postby anselm » 26. January 2009 12:26

Hallo glitzi,

diese Antwort habe ich leider schon mehr als oft gelesen.
Selber kompilieren...na, ja. ich hatte nur die leise Hoffnung, dass es einen anderen Weg gibt.

Also dann werd ich mal den Umweg gehen......

Danke und bis die Tage....
anselm
 

Re: ftp_ssl_connect

Postby glitzi85 » 26. January 2009 12:31

User avatar
glitzi85
 
Posts: 1920
Joined: 05. March 2004 23:26
Location: Dahoim

Re: ftp_ssl_connect

Postby Wiedmann » 26. January 2009 13:10

Hier der kurze knappe Ablauf:
Die Datei xyz wird von Maschine A auf Maschine B in Verzeichnis c mittels ftp_put --> Datei xyz wird auf Maschine B zu Datei xyzz verarbeitet.
Die Datei xyzz wird auf Maschine B im Verzeichnis cc bereitgestellt.
Die Datei xyzz wird vom Verzeichnis cc wieder auf Maschine geholt (ftp_get) und dann ausgewertet.

Dazu braucht man keine FTP-Extension, sondern es langen wie gesagt die normalen "Dateisystemfunktionen". Die können auch "ftps", sofern die Openssl-Extension geladen ist.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: ftp_ssl_connect

Postby anselm » 26. January 2009 14:14

Hallo Wiedmann,

Okay, die Dateisystemfunktionen sind eine feine Sache, aber kann ich mit den aauch mein File vom Server holen? Aller ftp_get?
anselm
 

Re: ftp_ssl_connect

Postby Wiedmann » 26. January 2009 14:18

aber kann ich mit den aauch mein File vom Server holen? Aller ftp_get?

Wiedmann wrote:Dazu braucht man keine FTP-Extension, sondern es langen wie gesagt die normalen "Dateisystemfunktionen".

(Das PHP-Manual lesen, soll auch helfen. Stichwort: Wrappper.)
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: ftp_ssl_connect

Postby anselm » 26. January 2009 15:40

Hallo Wiedmann,

dass mit dem Stichwort Wrapper, bzw. Dateisystemfunktionen war ein gute Idee.

Habe das jetzt mit folgendem getestet.

Code: Select all
$InputStream = fopen("ftps://xxxxx:xxxxx@xxxx-ssl.xxxxx.com/FolderPath/$datei", "rb");
$OutputStream = fopen($localPath.$datei, "w+b");
stream_copy_to_stream($InputStream, $OutputStream);


Dank Dir für den Tipp!
anselm
 

Re: ftp_ssl_connect

Postby Wiedmann » 26. January 2009 15:53

Habe das jetzt mit folgendem getestet.

Im prinzip würde das auch mit einem einfachen copy() tun. Man muss dann nur schauen, dass das Ziel noch nicht existiert.

(BTW: Willst du das Ziel mit dem Handle auch noch lesen?)
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Re: ftp_ssl_connect

Postby anselm » 26. January 2009 16:12

Hallo Wiedmann,

die Datei die ich von der Quelle zum Ziel schaufeln will, besteht aus einem Zip-File.

In dem Zip-File befindet sich eine Datei. Diese muss ich dann auswerten.

Das funktioniert aber schon recht gut.
anselm
 

Re: ftp_ssl_connect

Postby Nobbie » 27. January 2009 11:46

glitzi85 wrote:Tja, Da muss er durch 8)


Absolut super, nicht wahr? (OT, ich weiß): Bodo Wartke ist der mit Abstand beste "Liedermacher" (oder Kabarettist - vergleichbar mit dem leider verstorbenen Ulrich Roski, der eine Generation vorher "der Beste" war) der heutigen Zeit. Ich bin totaler Bodo Wartke Fan, der ist lustig, pfiffig, spielt gut Klavier, hat nette Melodien, da stimmt einfach alles!

Kann ich jedem nur ans Herz legen: schaut nach, ob Bodo Wartke irgendwo in der näheren Umgebung einen Abend gibt, fahrt hin - Ihr werdet es nicht bereuen.

So, das mußte mal sein, sorry für OT.
Nobbie
 
Posts: 8770
Joined: 09. March 2008 13:04

Re: ftp_ssl_connect

Postby glitzi85 » 27. January 2009 13:08

Nobbie wrote:Absolut super, nicht wahr?

Ja. Bin eher durch Zufall beim Youtube-Surfen drauf gestoßen und war sofort begeistert. Musikalisches Kabarett an sich ist schon was geniales und dann noch in dieser Qualität, hat leider seltenheitswert.
Lt. Tourplan kommt er erst Ende des Jahres in's Schwabenländle, werd aber auf jeden Fall versuchen da hinzugehen, wenn er in der Nähe ist.

mfg glitzi
User avatar
glitzi85
 
Posts: 1920
Joined: 05. March 2004 23:26
Location: Dahoim


Return to PHP

Who is online

Users browsing this forum: No registered users and 2 guests