Moin Lukas,
auf einer Formularseite hat ein Benutzer die Möglichkeit JPG-Dateien hochzuladen. Diese speichere auf dem Linux-Server in einem speziellen Verzeichnis und speichere den Namen in einer Tabelle. Die hochgeladenen Dateien können über einen Downloadlink wieder heruntergeladen werden.
dazu habe ich direkt ein paar Fragen:
- Wie stellst du sicher, dass nur JPEG-Dateien hochgeladen werden können?
- Kann jeder Nutzer die Dateien herunterladen oder nur derjenige, der eine Datei hochgeladen hat?
Hintergrund: Wenn du einen offenen Upload-Bereich hast, wird der sehr schnell zum Austausch illegaler Inhalte missbraucht.
Leider funktioniert es nicht, wenn die Datei deutsche Umlaute enthält.
… vermutlich nicht nur bei deutschen Umlauten …
In der Tabelle wird der Name korrekt gespeichert (bspw. Erwin_Müller.jpg) Wenn ich mir das Verzeichnis über WinSCP anschaue, wird auch dort der Name korrekt angezeigt. Aber schaue ich mir das in einer Putty-Session an, wird dort Erwin_M?ller.jpg angezeigt. Beim Klick auf den Download-Link erscheint im Browser schlicht "Objekt nicht gefunden".
Muss ich zwangsweise vor dem Upload alle deutschen Umlaute und sonstige Sonderzeichen ersetzen oder gibt es noch eine andere Möglichgkeit die Datei mit den Original-Umlauten wieder herunterzuladen?
Du musst sicherstellen, dass alle Beteiligten die gleiche Zeichenkodierung sprechen:
- Upload-Formular
- Datenbank
- Dateisystem
- Download-Skript
Viele Grüße
Robert