Hello Thomas,
$path='/klöndeele/bilder/Dieter draußen.jpg';
$link = implode('/',array_map('urlencode',explode('/',$path)));
Hat jemand eine bessere Idee?
Wie waere es mit:
$link = str_replace("%2F","/",urlencode($path));
Auf den ersten Blick verblüffend und wohl auch performanter als meine Lösung.
Muss ich jetzt glatt mal untersuchen, was passiert, wenn noch Parameter dranhängen an der URL.
Von Scan des Directorys können sie nocht kommen, aber an einer anderen Stelle aus einer Tabelle, in die ich Links eintrage.
Wenn die URI aus der Adressleiste übernommen wird, könnte dann schon mal stehen:
http://domain.tld/m%81llsammler/%81berfl%81ssige+Bilder.php?userdir=%2FS%94ren%2Fschule&cmd=del
Dann ist der String aber schon encoded.
Da muss ich wohl noch eine Prüfung einbauen, ob überhaupt noch encoded werden muss oder nicht. Wenn jemand daten in ein Input-Feld eingibt, kann er das ja im Klartext, oder aber auch mittels copy & Paste aus der Adressleiste ...
Mir scheint, dass Deine Lösung schlussendlich funktioniert, die Probleme liegen schon an einer andere Stelle.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau