Hallo zusammen,
Ich habe ein seltsames Problem.
Bei einem Datei Upload mit einem PHP Formular kam eine Fehlermeldung bei einer bestimmten Datei.
Die Datei heisst
Sys_Eng_für_ProjVA_2014.pdf
Ich habe herausgefunden das es am ü liegt. Allerdings kann ich andere Dateien von mir selbst erstellt die viele Sonderzeichen haben wie ü ß ä ü ohne Probleme hochladen.
Noch kurioser ist folgendes:
Wenn ich die original Datei nehme, im Windows Explorer das ü lösche und durch ein neues ü ersetze, ist alles in Ordnung. Ich kann den Upload ohne Fehler machen.
Bei der Webandendung steht im Header:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Ich bin jetzt nicht so der Zeichensatzexperte. ISt denn ein ü auf einem Windows 7 Pc nicht immer gleich im Dateinamen?
Wenn ich nun mit F2 den Dateinamen im Explorer kopiere und in Notepad++ oder Textpad kopiere sieht das ü plötzlich so aus:
Eng_fu¨r_
Wenn ich jedoch wiederum im selben Notepad++ Fenster ein ü schreibe ist es ok.
Wie kann man herausfinden welche Kodierung das ü hat?
Also bei meinem Dateiupload mache ich das mit "utf8_decode"
$file_name = utf8_decode($_FILES['fileuploads']['name'][$i]);
Hier tritt der Fehler dann auf uns die Datei wird als
Eng_fu?r_Proj... angezeigt.
Wenn ich das ganze ohne "utf8_decode" mache also;
$file_name = $_FILES['fileuploads']['name'][$i];
Dann bekomme ich keine Fehler. Allerdings sieht es dann in der Webanwendung etwas seltsam aus und man kann das ü nicht mehr lesen.
Jetzt bin ich etwas ratlos was zu tun ist?
vielen Dank und viele Grüße
hawk