php.de

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

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.04.2011, 20:16  
Erfahrener Benutzer
 
Benutzerbild von djscaleo
 
Registriert seit: 19.10.2008
Beiträge: 384
PHP-Kenntnisse:
Fortgeschritten
djscaleo kann nur auf Besserung hoffen
djscaleo eine Nachricht über ICQ schicken djscaleo eine Nachricht über Skype™ schicken
Standard FTP: Änderungsdatum gesammelt abfragen

Hallo Leute,

Momentan muss ich mit PHP eine Verbindung zu einem FTP Server herstellen und das klappt soweit auch ganz gut, allerdings sorgt mein PHP-Skript momentan nur für einen Absturz....

Und zwar brauche ich von mehreren Verzeichnissen auf einem FTP-Server den Verzeichnis-Inhalt und muss daraus entsprechende Dateien mit der Dateiendung x herausfischen und zu dieser dann das Änderungsdatum herausfinden.

Klappt auch ganz gut, zuerst lade ich mit frp_nlist(); alle Dateien in den Array, dann gehe ich jede durch, ob diese der Dateiendung entspricht und wenn ja dann soll dafür jede das Änderungsdatum mit ftp_mdtm(); abgerufen werden.

Problem ist nur, dass das bei 1137 Dateien (täglich steigend) ewig dauert......
Das führt momentan zu einem Timeout.

Ok mit der Zeit könnte ich von meinem Skript auch wieder ältere Dateien löschen lassen, aber das ist ja jetzt Nebensache.


Ich habe mir schon gedacht, man könne es ja einfach mit ftp_rawList machen, allerdings bekomme ich da nur im Plaintext den Namen das Monats und einen Tag, allerdings nicht ein Jahr zurückgegeben...

Kann man das vielleicht auch ein bissl schneller lösen? Immerhin kriegt das Filezilla ja auch so schnell hin....


Schon mal danke im Vorraus,

DjScaleo
djscaleo ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 26.04.2011, 20:38  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von djscaleo Beitrag anzeigen
Immerhin kriegt das Filezilla ja auch so schnell hin....
Der dürfte auch nur ein ls-Kommando an den FTP-Server absetzen - das kannst du mit ftp_exec oder ftp_raw auch versuchen.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 26.04.2011, 20:50  
Erfahrener Benutzer
 
Benutzerbild von djscaleo
 
Registriert seit: 19.10.2008
Beiträge: 384
PHP-Kenntnisse:
Fortgeschritten
djscaleo kann nur auf Besserung hoffen
djscaleo eine Nachricht über ICQ schicken djscaleo eine Nachricht über Skype™ schicken
Standard

LS gibts da ja nicht, aber LIST, das darf aber nur nach einem PASV kommen, und wenn ich dann

PASV
LIST \

schreibe, krieg ich nen leeren String zurück...
djscaleo ist offline   Mit Zitat antworten
Alt 26.04.2011, 21:07  
Erfahrener Benutzer
 
Registriert seit: 11.04.2011
Beiträge: 260
PHP-Kenntnisse:
Fortgeschritten
lcrash wird schon bald berühmt werden
Standard

Ich bin mir nicht ganz sicher, aber ich meine, dass man schon nach dem Änderungsdatum sortieren kann, denn nur bei älteren Dateien wird statt der Uhrzeit das Jahr geliefert.

ftp_nlist($connection_id, '-t .'); geht auch (Parameter sollten wie bei „ls“ sein). Unter Windows wäre es /O:-D (Hilfe zu „dir“ ansehen).
lcrash ist offline   Mit Zitat antworten
Alt 26.04.2011, 22:23  
Erfahrener Benutzer
 
Benutzerbild von djscaleo
 
Registriert seit: 19.10.2008
Beiträge: 384
PHP-Kenntnisse:
Fortgeschritten
djscaleo kann nur auf Besserung hoffen
djscaleo eine Nachricht über ICQ schicken djscaleo eine Nachricht über Skype™ schicken
Standard

Ja dann hab ich es schn mal nach Änderungsdatum sortiert, aber ich brauch das Datum als Timestamp in einer Variable um damit weiter arbeiten zu können...

Oder meinst du ich soll jetzt damit einfach die erweiterte Abfrage ftp_rawlist(); nehmen und wenn da kein Jahr hinter steht, dann ist es dieses Jahr, sonst das was da steht?
djscaleo ist offline   Mit Zitat antworten
Alt 26.04.2011, 22:27  
Erfahrener Benutzer
 
Registriert seit: 11.04.2011
Beiträge: 260
PHP-Kenntnisse:
Fortgeschritten
lcrash wird schon bald berühmt werden
Standard

Das musst du testen. Wenn du direkten Zugriff auf den Server hast, kannst du mit touch -t [[HH]JJ]MMTTSSmm[.ss] mal ein paar Daten festlegen und überprüfen, was der Server ausgibt.
lcrash ist offline   Mit Zitat antworten
Alt 28.04.2011, 00:48  
Erfahrener Benutzer
 
Registriert seit: 04.08.2010
Beiträge: 287
PHP-Kenntnisse:
Fortgeschritten
zwutz wird schon bald berühmt werden
Standard

wenn die rawlist aufgebaut ist wie ich vermute sollte die Info ausreichen, die du bekommst.

Steht nur eine Uhrzeit da, ist es heute, es sei denn, es würde sonst in der Zukunft liegen, dann ist es gestern
Monat + Tag + Uhrzeit entspricht diesem Jahr (oder dem letzten, wenn es sonst in der Vergangenheit liegen würde)
Jahr + Monat + Tag sollte dann eindeutig sein, da fehlt dann allerdings die Uhrzeit

wenn du allerdings Glück hast, unterstützt dein FTP das MLSD-Kommando als Alternative zu LS

Da kommt dann z.B. sowas als Ergebnis für jede Datei vom Server:
Code:
modify=20060505084303;perm=adfrw;size=207;type=file;unique=805U147A8C0;UNIX.group=1103;UNIX.mode=0644;UNIX.owner=1227; file1.txt\r\n
zwutz ist offline   Mit Zitat antworten
Alt 01.05.2011, 19:01  
Erfahrener Benutzer
 
Benutzerbild von djscaleo
 
Registriert seit: 19.10.2008
Beiträge: 384
PHP-Kenntnisse:
Fortgeschritten
djscaleo kann nur auf Besserung hoffen
djscaleo eine Nachricht über ICQ schicken djscaleo eine Nachricht über Skype™ schicken
Standard

also das mit MLSD klappt nicht:

425 Unable to build data connection: Invalid argument

aber ich mach das dann einfach mit rawlist und fisch mir dann das Datum raus. Danke für eure Hilfe
djscaleo 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
FTP Benutzer auf 1 Verzeichnis einschränken jjkkll PHP-Fortgeschrittene 5 22.01.2011 03:43
FTP login (auth SSL) über PHP Script yezz PHP Einsteiger 7 14.01.2011 00:52
[Erledigt] Select Abfragen zusammenführen Netweasel Datenbanken 6 21.08.2010 18:11
ftp upload: Lokales Verzeichnis spidernet1979 PHP-Fortgeschrittene 13 27.05.2010 15:42
frage zu PHP und FTP? Hoodler PHP Tipps 2010 8 07.05.2010 23:04
Zwei Abfragen zu einer zusammenfassen Extremefall PHP Tipps 2010 7 26.02.2010 18:00
FTP Passwort ver/entschlüsseln Dominik PHP Tipps 2009 63 10.01.2010 19:25
[MySQL] IF / CASE: mehrere Werte abfragen Zeussi Datenbanken 3 01.08.2009 15:00
[Erledigt] cURL oder FTP mit richtiger Sprache regsnerven PHP Tipps 2009 1 26.07.2009 14:17
WebDav vs. FTP Thalo Off-Topic Diskussionen 4 10.07.2009 00:15
Abfragen von Seitendaten Rico de Amo JavaScript, Ajax und mehr 7 13.03.2009 20:50
FTP Upload so richtig? stYle345 PHP Tipps 2009 7 27.02.2009 13:40
PDO und parallele Abfragen Normalo PHP Tipps 2008 1 09.06.2008 12:39
mehrere Abfragen (Selects) verbinden???? CIMM Datenbanken 15 03.05.2006 18:59
[Erledigt] 204 077 15-4 in DB mit WHERE als 204077154 abfragen Datenbanken 6 24.01.2006 11:47

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ftp änderungsdatum, ftp datumsangabe, php änderungsdatum ftp, php datei änderungsdatum, php ftp abfrage, php ftp änderungsdatum datei, ftp ändern des dateidatums, 425 unable to build data connection: invalid argument, php datei ftp abfrage datum, filezilla 425 unable to build data connection: invalid argument, ftp_nlist datum, ---> list425 unable to build data connection: invalid argument, php ftp erstelldatum, php ftp änderungsdatum, mit ftp php änderungsdatum, sftp server abfragen nach änderungsdatum, ftp änderungsdatum php, 425 unable to build data connection bei filezilla, php ftp_rawlist ohne jahr, php ftp nach änderung sortieren

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