tomdin
Goto Top

Dateidatum von externem Server auslesen

Bitte um Hilfe!

Ich will mit PHP das Dateidatum einer Datei, die auf einem anderen Server liegt, auslesen.
Die Datei wird mit "\\andererserver\content\imsmanifest.xml" (auch mit http://...) als Text im Browser angezeigt.
Wenn ich in der Datei "http://meinserver/datumlesen.htm" die PHP Funktion
filectime('http://andererserver/content/imsmanifest.xml') aufrufe, bekomme ich die "(errno=2 - No such file or directory)" Fehlermeldung. Beide Systeme sind IIS Rechner. Der anonyme IUSER hat Lesezugriff.
Danke für eure Vorschläge...
Tom

Content-ID: 23121

Url: https://administrator.de/contentid/23121

Ausgedruckt am: 22.11.2024 um 15:11 Uhr

Schrottie
Schrottie 09.01.2006 um 13:51:38 Uhr
Goto Top
Ich weiß zwar nicht warum die die Zeit von einem anderem Server auslesen willst, aber eine DEMO der xml-ausgabe-datei würde mir helfen eine lösung zu finden. Auch dein script wäre nichts schlecht, erspart mir Tipp-Arbeit ;)


Schrottie

EDIT:
Ich hoffe du läst die html-Datei durch den PHP-Interpreter laufen
tomdin
tomdin 09.01.2006 um 14:16:08 Uhr
Goto Top
Danke für deine Hilfsbereitschaft:

Das aufrufende File (html mit PHP) liegt, genauso wie die Datei, deren Speicher-Datum ich lesen möchte, im Firmenintranet, allerdings auf unterschiedlichen Servern:
Datei, die versucht das Datum zu lesen:
http://ecol.gc.spardat.at/wbt_aufrufe/aufruf.htm:

<?php

function GetFileTime($file)
{
$date = filectime($file);
$ausgabe = date('d.m.y', $date);
return $ausgabe;
}

echo GetFileTime('http://S0198CS0026.f000.d0198.sd.spardat.at/content/alters_risikovorsorge/01_sozialversicherung/imsmanifest.xml');

?>

GetFileTime:
Dieser Aufruf liefert die "(errno=2 - No such file or directory)" Fehlermeldung. Wenn ich allerdings den Übergabe-Link in den Browser eingebe, wird die Datei im Browser angezeigt dh. der Link ist korrekt....?
(Ich habe es auch schon mit Pfad zu freigebendem Verzeichnis \\S0198CS0026.f000.... usw. versucht; geht auch nicht)

Danke!
Schrottie
Schrottie 09.01.2006 um 14:43:46 Uhr
Goto Top
Hmm ich habe das grade mal getestet und gegooglet.

Also ganz klar die Pfadangebe stimmt nicht. Oder ist nicht zu "lesen"

Im Handbuch findet sich folgender Text wieder: "Die Zeit wird als UNIX-Timestamp zurückgegeben. " Ich weiß nicht wie es der IIS macht.

Versuch doch mal das Script auf dem einem Rechner auszuführen. Also eine Testdatei anzulegen und diese mit der Funktion aufzurufen. Bekommst du dann immer noch diese Fehlermeldung?
tomdin
tomdin 09.01.2006 um 14:48:01 Uhr
Goto Top
Hi! Mit einer lokalen Testdatei funkt das Ganze. --> Es liegt definitiv am Pfad; habe aber schon alle Varianten probiert (vielleicht irgendein sch** mit Berechtigungen)
Schrottie
Schrottie 09.01.2006 um 14:49:27 Uhr
Goto Top
Du kannst die datei über einen Webbrowser aufrufen?
tomdin
tomdin 09.01.2006 um 14:53:22 Uhr
Goto Top
Ja, der Link, der beim Funktionsaufruf zu "(errno=2 - No such file or directory)" führt, zeigt die XML Datei im Browser an.
Guenni
Guenni 10.01.2006 um 03:22:07 Uhr
Goto Top
@tomdin

Hi,

wenn du schon das Verzeichnis freigibst, dann binde es mal mit
mit net use Laufwerk: \\server\freigabe ein, dann befindet sich
die Datei ja in deinem Dateisystem.

print GetFileTime("Laufwerk:\Verzeichnis\Dateiname"); müßte
dann funktionieren.

Gruß
Günni
Schrottie
Schrottie 12.01.2006 um 14:10:46 Uhr
Goto Top
Hat es nun Funktioniert?
tomdin
tomdin 12.01.2006 um 15:29:57 Uhr
Goto Top
Danke nochmal an alle!
War ziemlich gefinkelt.
Der Tipp mit dem Laufwerk des einen Servers auf den anderen verbinden und dann per Laufwerksbuchstaben etc. den Pfad ansprechen wäre zu schön gewesen - hat einfach nicht gefunkt.
Habe dann am 2-Server PHP installiert, dort das Mini-Skript, dass das File-Datum ausliest platziert (da gabs natürlich keine Probleme mit dem Pfad da besagte Files auf diesem Server liegen).
In die auf dem 1-Server liegende HTML Datei habe ich das PHP Skript mit <? include...> eingebunden. Hier gabs dann noch Troubles, da ich die Aufrufparameter aus javascript in das include integrieren wollte, der php-interpreter allerdings sofort auch die javascripts ausgewertet hat und einen php-parsing Fehler angezeigt hat.