Page 1 of 1
Rekursive PHP-Funktion nicht verfügbar
Posted: 2005-01-20 10:57
by sebstof
Hallo,
auf meinem Server (Suse 9.1, apache 2.0, php 4.3.4) lassen sich die Verzeichnisse nicht rekursiv lesen: ($conn, "-alR $dir");
Muss ich diese Funktion irgendwo aktivieren?
Re: Rekursive PHP-Funktion nicht verfügbar
Posted: 2005-01-21 07:37
by r00ty
sorry, kannst du mal ein wenig mehr posten wie das script aussieht ? aus dem String werd ich nicht schlau....
Re: Rekursive PHP-Funktion nicht verfügbar
Posted: 2005-01-21 07:45
by suntzu
sebstof wrote:($conn, "-alR $dir");
- Das ist keine Rekursion innerhalb von PHP
- Da fehlt noch ein `ls`
- Was genau tut nicht?
- Darfst du überhaupt Systembefehle ausführen?
Re: Rekursive PHP-Funktion nicht verfügbar
Posted: 2005-01-21 10:09
by sebstof
SunTzu wrote:sebstof wrote:($conn, "-alR $dir");
- Das ist keine Rekursion innerhalb von PHP
- Da fehlt noch ein `ls`
- Was genau tut nicht?
- Darfst du überhaupt Systembefehle ausführen?
Das Script soll die Gesamtgröße aller Dateien in einem bestimmten Verzeichnis (und dessen Unterordnern) ermitteln. Die Inhalte der Unterordner werden jedoch nicht berücksichtigt. Das soll nun daran liegen, dass die Rekurive Auslesung aufgrund der spezifischen Serverkonfiguration nicht möglich ist. Kann das sein?
- Darfst du überhaupt Systembefehle ausführen?
Das ganze läuft ausschliesslich über den FTP-Zugang. Können da Beschränkungen vorliegen (kopieren, umbenennen, löschen, erstellen - funktioniert auf diesem Wege)?
sorry, kannst du mal ein wenig mehr posten wie das script aussieht ? aus dem String werd ich nicht schlau....
Hier die (vollständige?) Funktion:
Code: Select all
function getSize($dir,$recurse){$conn=@ftp_connect($_SESSION['s3']);if(@ftp_login($conn, $_SESSION['s4'], $_SESSION['s5'])){if($recurse==1)$temp=ftp_rawlist($conn,"-alR $dir");else $temp=ftp_rawlist($conn,"-al $dir");foreach($temp as $file){if(ereg("([-d][rwxst-]+).* ([0-9]) ([a-zA-Z0-9]+).* ([a-zA-Z0-9]+).* ([0-9]*) ([a-zA-Z]+[0-9: ]*[0-9]) ([0-9]{2}:[0-9]{2}) (.+)", $file, $regs)){$isdir=(substr($regs[1],0,1)=="d");if(!$isdir)$size+=$regs[5];}}return $size;@ftp_close($conn);}}
Danke!
Re: Rekursive PHP-Funktion nicht verfügbar
Posted: 2005-01-21 10:17
by suntzu
Hi,
ist $recurse vielleicht gar nicht gesetzt?
Re: Rekursive PHP-Funktion nicht verfügbar
Posted: 2005-01-21 10:38
by sebstof
SunTzu wrote:Hi,
ist $recurse vielleicht gar nicht gesetzt?
Doch, wird beim Aufruf übergeben: