Halihallo Tom²
Auf der oben genannten Seite wird gesagt, dass man sich auf $_FILES['probe']['name'] nicht verlassen kann (wegen Laufwerksbuchstaben, Verzeichnissen...). Wie komme ich dann an den Dateinamen ran?
Der Dateiname, oder Dateiname+Pfad?
Nun, bei Windows und Unix liesse sich der Dateiname über '' oder '/'
finden (einfach alles nach dem _letzten_ '' oder '/').
Bei Mac (MacOS<10 nehme ich an) wird's etwas komplizierter, denn da
ist das Verzeichnistrennzeichen ein Doppelpunkt ':'.
Folglich: Wenn du den Dateinamen herausfinden möchtest, dürfte sich
"alles nach dem letzten '/' oder '' oder ':'" als zuverlässig
erweisen.
Aber da ein Doppelpunkt ein gültiges Zeichen eines Unix-Namens ist,
könnte es wieder Probleme geben.
Ich hab mal kurz unsere Mac's angeworfen und folgendes
herausgefunden:
Bei MacOS 9 und kleiner mit IE 5.5 und NS 7.1 werden - auch wenn die
Datei in einem Unterverzeichnis liegt - weder Pfadangaben noch
Laufwerksbezeichnungen übertragen. Der Dateiname entspricht also bei
MacOS<=9 _genau_ $_FILES['probe']['name']. Bei anderen Browsern und
MacOS10 weiss ich das nicht, aber falls sich dieses Schema bei allen
Mac-Browsern und -Systemen bewahrheitet, kann man mit der Erkennung
von '/' und '' IMHO nur noch bei VMS etwas falsch machen.
Ach ja, an den Dateinamen kommst du mit Sicherheit. Das Problem ist
der Pfad bzw. die Erkennung wo - falls vorhanden - dieser auf
bestimmen Plattformen endet.
Viele Grüsse
Philipp