PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Dateinamen mit leerzeichen aus Array bändigen (http://www.selfphp.de/forum/showthread.php?t=25885)

DerGecko 18.06.2016 18:40:22

Dateinamen mit leerzeichen aus Array bändigen
 
Hallo zusammen,

ich beiße mir gerade ein wenig die Zähne daran aus, die Leerzeichen in Dateinamen aus einem Array für die Verwendung in Links aufzubereiten:
Es geht im Code um den FTP Link

PHP-Code:

//Tabelle für DMS links generieren

echo "<table class='Layout' width=900>";
echo 
"<tr>";
echo 
"<td><b>Titel</td><td><b>Datum</td><td><b>Typ</td><td><b>PDF</td>";
echo 
"</tr>";
 
//Datenausgabe an Tabelle

 
while($ausgabe mysql_fetch_array($result))
{
   echo 
"<tr>
           <td>" 
$ausgabe['title'] . "</td>
           <td>" 
$ausgabe['dateCreated']."</td>
           <td>" 
$ausgabe['name'] . "</td>
           <td><a href='ftp://192.168.178.2/DMS_Eingang/" 
str_replace(' ''%20'$ausgabe['path']) ."' target='PDF_Frame'><img src='pdf.gif' alt='Dokument anzeigen' /></a></td>";       
    echo 
"</tr>";
  }
echo 
"</table>"

Ich habe es str_replace und auch mit rawurlencode versucht.
Mit str_replace geschieht gar nichts.

Wie macht man das richtig?

Viele Grüße,
Mario

DerGecko 18.06.2016 22:52:36

AW: Dateinamen mit leerzeichen aus Array bändigen
 
Nachtrag:

Ich habe mal den Dateipfad aus dem Array in eine Variable $pfad übergeben und nutze nun diese- es wird das erwünschte Ergebnis erzielt und die Leerzeichen ersetzt:

PHP-Code:

while($ausgabe mysql_fetch_array($result))
{
    
$pfadstr_replace(' ''%20'$ausgabe['path']);
  ....
           <
td><a href='ftp://192.168.178.2/DMS_Eingang/" . $pfad ."' target='PDF_Frame'>
  .... 

$pfad= str_replace(' ', '%20', $ausgabe['path']);

000001_Pete%20Johnsen\000281_ADAC%20-%20Beitragsrechnung.pdf

Chrome zeigts nur in der Footer Vorschau nicht an... Fakt ist, dass die Anzeige von via FTP geladenen Dateien in iFrames schlecht funktioniert und das weiterhin nur hinhaut, wenn keine Leerzeichen im Dateinamen sind.

Wie würdet ihr es lösen, PDF Dateien im Browser darzustellen?
P.s.: Die DMS Dateien sind zwar auf der gleichen Storage, aber aus Sicherheitsgründen nicht via http zu erreichen.

chorn 20.06.2016 10:55:45

AW: Dateinamen mit leerzeichen aus Array bändigen
 
ich versteh das Problem nicht, rawurlencode() macht doch genau das:

https://3v4l.org/7uC59

hast du vielleicht ein Anzeigeproblem im Browser, weil der das in der Adressleiste/Tooltip wieder zurückumwandelt? Guck mal in den Quelltext was da steht


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:43:11 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.