Mit PHP über FTP zwei Ordner synchronisieren.
Localhorst
- php
Hallo Forum,
ich möchte mittels eines PHP Scriptes zwei Ordner die auf zwei verschiedenen Servern in der großen weiten Welt liegen synchronisisern.
Was ich habe:
-Das Script verbindet sich erfolgreich mit dem anderen Server
-ich habe ein Array $quell_ordner_liste in dem alle Dateinamen des Quell Ordner liegen
-ich habe ein Array $ziel_ordner_liste in dem alle Dateien von dem zu syncronisierenden Server sind.
(Beide Arrays durch ausgabe überprüft)
Nun durchlaufe ich das Quell Array und wenn da eine Datei nicht in dem Ziel Array ist, soll er das rüber FTPen.
Er findet auch die Datein die fehlen, aber das FTPen klappt nicht.
....
foreach ($quell_ordner_liste as $file)
{
if (!in_array ($file, $ziel_ordner_liste )) {
echo "<hr>Fehlende Datei gefunden!";
echo $file." gibt es nicht<br><br>";
echo "Versuch die Datei zu synchronisieren ";
if (!ftp_get ( $conn_id, $ziel_ordner.$file, $file, FTP_BINARY )){
echo "<font color="red">negativ !!!</font>";
}else{
echo "<font color="green">positiv !!!</font>";
}
}
}
Fehlermeldung:
Warning: ftp_get(): Error opening ./../upload/test.jpg in (.....)ftp_bilder.php on line 70
Ok, die Datei in die er schreiben soll kann er nicht öffnen, der Pfad stimmt. Die Berechtigungen habe ich schon für den Test hoch gesetzt, auf chmod 777 damit es daran nicht scheitern kann.
Hatte das Script auf meinem lokalen Rechner/Server getestet, da ging es. Hab aber lokal ein Windows System, die Server sind beide Unix.
Wäre nett, wenn mir einer von euch auf die Sprünge hilft.
Gruß
Localhorst
Da fällt mir doch glatt ein Witz ein:
Wohin fliegt ein schwuler Adler?
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Zu seinem Horst !11elf!!1
MuhahaHahah HaHAhah hahAhahahaha AhaAhAahahaha..
ich lach mich weck. *g*
Bin dadurch zwar nicht weiter gekommen, aber Lachen mußte ich :-)
n'abend,
Nun durchlaufe ich das Quell Array und wenn da eine Datei nicht in dem Ziel Array ist, soll er das rüber FTPen.
also wenn datei local vorhanden aber remote nicht, dann kopiere von local auf remote?
wenn das obige zutreffen sollte, solltest du nicht
ftp_get(); // datei von remote _holen_
sondern
ftp_put(); // datei nach remote _schicken_
verwenden.
weiterhin schönen abend...
Ne,ne
Sind ja quasi beide remote...(kann man bestimmt nicht sagen..)
Das Script wird auf einem Server ausgeführt das ist dann der locale Server und soll dort von einem remote Server die entsprechenden Bilder laden.
Hoffe es kommt halbwegs rüber was ich sagen wollte.
Gruß
Localhorst