Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [php] Umlaute in Pfaden (https://www.delphipraxis.net/86996-%5Bphp%5D-umlaute-pfaden.html)

Luckie 21. Feb 2007 22:57


[php] Umlaute in Pfaden
 
Ich erstelle auf meiner Homepage Directorylistings mit php. Allerdings hat php wohl Probleme, wenn sich Umlaute im Pfad oder Dateinamen befinden. Zu sehen hier: http://www.michael-puff.de/dirindex....20-%20Schäfer/ Die datei läßt sich nicht runterladen, weil sie aufgrund des Umlautes im Pfad wohl nicht gefunden wird. Gibt es dafür eine Lösung? Und wenn ja, wie sieht diese aus?

Daniel 21. Feb 2007 23:03

Re: [php] Umlaute in Pfaden
 
Ich denke, dass Dein Script, welches die Links generiert, lediglich die Umlaute wegpatchen muss:

Code:
$url_nachher = rawurlencode(utf8_encode($url_vorher));
Quellen:
http://de.php.net/manual/de/function.rawurlencode.php
http://de.php.net/manual/de/function.utf8-encode.php

Luckie 21. Feb 2007 23:09

Re: [php] Umlaute in Pfaden
 
Hm:
Code:
    $files = ListFiles($folder, 'namea');
    $count = 0;
    foreach($files as $file)
    {
      if ($count % 2 == 0)
      {
        echo '<tr class="even">';
      }
      else
      {
        echo '<tr class="odd">';
      }
      echo '<td class="date">'.date("Y-m-d H:i", filemtime($folder.$file)).'</td>
        <td class="size">'.filesize($folder.$file).'</td>
        <td class="name">[img]'.PickImage($folder.$file).'[/img]
          [url="/'.rawurlencode(utf8_encode($folder.$file)).'"]'.$file.'[/url]</td>';
      echo '</tr>';
      $count++;
    }
Wenn ich das so schreibe und dann auf den Link klicke kommt noch nicht mal mein 404 Fehler, sondern
Zitat:

Die Webseite wurde nicht gefunden.
vom Browser.

Lösung von Christian S.:
Code:
href="/'.str_replace("%2F", "/", rawurlencode($folder.$file)).'">
Mann muss die "/" wieder zurückverwandeln, da sie von rawurlencode auch übersetzt werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz