Mehrere Datein über ftp_get

ChuloGT

Mitglied
Ich habe nichts gefunde, bin mir aber auch nicht 100%ig sicher wonach ich suchen soll

Wo liegt das Problem wenn ich die datein in $source_array auf meinen server mit den selben bezeichnungen spielen wll?

Sollte ich nicht mit der Funktion foreach arbeiten?
mir fällt jedoch nichts bessres ein wie ich das problem sonst lösen könnte!

Könnt Ihr mir einen Denkanstoß geben?

<FONT style="BACKGROUND-COLOR: #ffffff" face=Arial>
PHP:
<?php
//#####################Hier sind die Variablen#####################
//Quelldatei bzw. die Zu Kopierende Datei
	$source_array = array ('SoBase.csv.gz','SoPayment.csv.gz','Countries.csv.gz');
//Zieldatei bzw. der Ort, an dem source_file gespeichert werden soll
	$local_array = array ('SoBase.csv.gz','SoPayment.csv.gz','Countries.csv.gz');
//FTP-Zugangsdaten, FTP, auf dem die source_files liegen
	$user = "user";
	$pass = "pass";
	$ftp_server = "server";
// Herstellen der Basis-Verbindung - ssl steht für die verschlüsselte Verbindung zum Server
	$verbindung=ftp_ssl_connect("$ftp_server");
// Einloggen mit Benutzername und Kennwort auf dem FTP-Server
	$login_result = ftp_login($verbindung, "$user", "$pass");
//##################################################################
echo ("<BR><BR>");
//##################################################################
// Verbindung zum FTP überprüfen
	if ((!$verbindung) || (!$login_result)) { 
	echo "Ftp-Verbindung nicht hergestellt!";
	echo ("Verbindung mit <B>".$ftp_server."</B> als Benutzer <B>".$user."</B> nicht möglich"); 
	die; 
	} else {
	echo ("Verbunden mit <B>".$ftp_server."</B> als Benutzer <B>".$user."</B>.");
	}
//##################################################################
echo ("<BR><BR>");
//##################################################################
// Upload mehrerer Dateien
foreach ($source_array as $sarray)
{
foreach ($local_array as $larray)
{
	if (ftp_get($verbindung, $larray, $sarray, FTP_ASCII)) 
	{
	 echo "<B>$larray\n</B> wurde erfolgreich geschrieben";
	 echo ("<BR>");
	} 
	else 
	{
	 echo "Probleme beim schreiben der Datei $larray sind aufgetreten\n";
	 echo ("<BR>");
	 exit();
	}
}
}
//##################################################################
?>
 
Ich weis nur noch nicht genau, was dein Posting bedeutet.

Geht das Script, geht es nicht ?

Und was willst du genau machen?
z.B. Dateien in einer Liste markieren und dann runterladen,
mehrere Dateien in Felder eintragen und dann hochladen...

Wie können wir dir helfen ?
 
Okay das script funktioniert, aber nur wenn ich genau eine datei um downloaden angebe ($source_file)

Ich habe aber mehrere Datein auf dem entfernten Server, die ich täglich aktualisieren muss, und dafür wollte ich mir einen script schreiben.

Also, ich weiß, welche daten ich von dem server auf meinem server laden will und ich weiß wie ich einzelne daten sozusagen auf meinem server downloaden will! Sobald ich das mit mehreren Daten versuche geht es aber nicht bzw. ich bekomme es nicht hin.

Versucht habe ich wie du siehst dies durch ein array zu bewerkstelligen, geklapp hats aber leider noch nich! Ich weiß jez leider nicht mehr wie ich weiter vorgehen soll oder wie ich das mit welcher schleife am besten lösen könnte

Danke vielmals im vorraus
 
Nur ein Denkanstoss:

In eine Textdatei, wir nennen sie mal transfers.txt, schreiben wir in die einzelnen Zeilen

up datei1.zip
up datei2.zip
down datei3.zip
[-- EOF --]

So, das laden wir mit dem Skript hoch.

Das Skript erkennt:
Hey, das ist ja eine Transferanweisung. Soll ich die jetzt ausführen?

Und dann machst du nichts anderes als Zeile für Zeile von deinem Skript abarbeiten zu lassen...

Abwandlung:
Das ganze in ein Textarea eintragen

Erweiterung:
Befehle integrieren:
up
down
del
md
cd
rd

usw...
 
Aber mal zurück zu deinem Problem:
Naja, du kannst das Array auch nicht so benutzen ;)
Du musst es fetchen (Suche im Forum nach array und fetch)
 
:))))))) Erfolgserlebns pur :)))

Also so kann man den letzten Abschnitt benutzen damit alle datein im array gedownlaoded werden

PHP:
// Upload mehrerer Dateien
foreach ($source_array as $sarray)
{
	if (ftp_get($verbindung, $sarray, $sarray, FTP_ASCII)) 
	{
	 echo "<B>$sarray\n</B> wurde erfolgreich geschrieben";
	 echo ("<BR>");
	} 
	else 
	{
	 echo "Probleme beim schreiben der Datei $sarray sind aufgetreten\n";
	 echo ("<BR>");
	}
}
 
Zurück