php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 26.12.2009, 02:44  
Neuer Benutzer
 
Registriert seit: 26.12.2009
Beiträge: 19
PHP-Kenntnisse:
Anfänger
raupe_90 befindet sich auf einem aufstrebenden Ast
Standard Leerzeichen in dateinamen....

Ein sehr eigenartiges Problem:
ich hole mir die bilder mithilfe einer variable $file in einer schleife. so weit so gut: 21.jpg bild10.jpg usw.
auf einmal habe ich die datei "mein bild.jpg". das bild erscheint nicht, und zeigt mir beim mausdrauf nur "mein", wenn ich aber den quelltext der ausgabe aufrufe, steht im quellcode doch <img src='mein bild.jpg'>
wenn ich es einfach statisch einbinde, erscheint das bild, auch per echo:
echo $file.'<br>';
bringt mir die schleife eine saubere ausgabe:
21.jpg
bild10.jpg
nummer_1.jpg
mein bild.jpg

aber sobald ich die gleiche ausgabe so verpacke:
echo '<img src='.$dir.'/'.$file.' border=0>';
dann erscheinen nur die dateien, die kein leerzeichen haben....
Aus bestimmten gründen muss ich auf die umbenennung der dateien verzichten...
hat jemand eine idee?

lieben dank für jede hilfe...
raupe_90 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 26.12.2009, 05:01  
Benutzer
 
Registriert seit: 22.12.2009
Beiträge: 96
PHP-Kenntnisse:
Fortgeschritten
Emskopp befindet sich auf einem aufstrebenden Ast
Standard

ich hab noch nie ein Bild eingebunden was Leerzeichen hatte...
in der alten HTML Kunde wurde ich belehrt, dass es sowas im Web nicht gibt, aber vll. werde ich heute eines besseren gelehrt...
Emskopp ist offline  
Alt 26.12.2009, 09:32  
Moderator
 
Benutzerbild von Asipak
 
Registriert seit: 18.07.2005
Beiträge: 4.071
Asipak sorgt für eine eindrucksvolle AtmosphäreAsipak sorgt für eine eindrucksvolle Atmosphäre
Standard

Morgen,

Leerzeichen werden in der URL durch %20 dargestellt. Du kannst mal versuchen die Leerzeichen mit str_replace zu ersetzen oder du greifst zu PHP: rawurlencode - Manual

Code:
<img src="<?php echo $dir . '/' . rawurlencode($file); ?>" alt="" />
Gruß
__________________
HalloPHP
Asipak ist offline  
Alt 26.12.2009, 15:31  
Neuer Benutzer
 
Registriert seit: 26.12.2009
Beiträge: 19
PHP-Kenntnisse:
Anfänger
raupe_90 befindet sich auf einem aufstrebenden Ast
Standard

"in der alten HTML Kunde wurde ich belehrt"
das muss aber sehr alt sein
seitdem gibt es google, bei dem der user in der bildsuche nicht "uli_stein" eingibt (100 ergebnisse, sondern "uli stein" (100 000 ergebnisse)

Asipak: danke... funktioniert nur ausserhalb der schleife, weiss nicht warum...

Geändert von raupe_90 (26.12.2009 um 15:57 Uhr).
raupe_90 ist offline  
Alt 26.12.2009, 15:43  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 993
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard

Das liegt nicht an der HTML Kunde, sondern an den Betriebssystemen.
Ansich sollte man der kompatibilität zu liebe keine Leerzeichen in den Pfaden haben. Das stimmte damals sowie heute.

Das liegt daran, dass viele Systeme damals keine Leerzeichen in Pfaden unterstützten. Das ist genau das gleiche, wie mit htm und html. Das hängt auch nicht mit HTML zusammen, sondern damit, dass Dateinamen auf früheren Systemen nur 8 Zeichen lang sein durften, und man Platz sparen wollte.

Heute unterstützten die meisten Systeme Leerzeichen in den Pfaden, aber nicht alle. Es kann also durchaus passieren, dass du Benutzer mit alten Systemen oder einigen heutigen unixoiden Systemen aussperrst. Das sollte genauso vermieden werden wie Sonderzeichen in den Dateinamen, auch wenn schon viele Systeme utf-8 im Dateisystem beherrschen.
__________________
Frank ist offline  
Alt 26.12.2009, 15:54  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.425
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Zitat:
auch wenn schon viele Systeme utf-8 im Dateisystem beherrschen
Ich habe regelmäßig Zeichensalat im Dateinamen, wenn ich hier mit meinem Gentoo einen Dateinamen mit Sonderzeichen vergebe und die Datei dann unter Windows XP weiter verwende.
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline  
Alt 26.12.2009, 15:55  
Neuer Benutzer
 
Registriert seit: 26.12.2009
Beiträge: 19
PHP-Kenntnisse:
Anfänger
raupe_90 befindet sich auf einem aufstrebenden Ast
Standard

jetzt funktioniert, und zwar statt
<img src='.$dir.'/'.$file.' border=0';
das hier:
<img src=\"".$dir."/".$file."\" border=\"0\";

dann ist die datei inkl. link (hier nicht dabei) "mein bild.jpg"!
danke alle!
raupe_90 ist offline  
Alt 26.12.2009, 15:56  
Neuer Benutzer
 
Registriert seit: 26.12.2009
Beiträge: 19
PHP-Kenntnisse:
Anfänger
raupe_90 befindet sich auf einem aufstrebenden Ast
Standard

im windows ist egal, allerdings geht es hier um webserver (apache, linux) und eine menge bilder, die übers web gefunden werden muessen (s. beispiel mit uli stein), so ca 200, also keine möglichkeit zum umbenennen...
raupe_90 ist offline  
Alt 26.12.2009, 15:58  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 993
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard

Google indiziert nicht nach Dateinamen!
Es gibt verschiedene Algorithmen. Alle Zusammen werten deine Bilder aus.
Wendest du die Syntaxauszeichnung korrekt an, hast du mit Google und Co keine Probleme.
Wofür gibt es das alt="" - Attribut?
__________________
Frank ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Beim BB-Code generieren wird Leerzeichen falsch ausgegeben daniel2910 PHP Tipps 2009 12 14.12.2009 21:38
Fehlender Leerzeichen bei fread() Bon_Mori PHP Tipps 2009 7 29.09.2009 16:50
[Erledigt] Dateinamen mit Spezialzeichen Raymond PHP Tipps 2009 11 20.06.2009 23:00
Leerzeichen am Ende macht Probleme superskunk Datenbanken 31 20.05.2009 12:48
Elegantere Lösung für Leerzeichen? Mütze PHP Tipps 2009 6 02.02.2009 15:47
Feldname mit Leerzeichen lässt sich nicht verarbeiten TheFlu Datenbanken 8 16.10.2007 23:01
wordwrap und Leerzeichen Zangelo PHP Tipps 2007 6 10.04.2007 21:36
Dateinamen ausgeben mit Leerzeichen tennessee Server, Hosting und Workstations 2 12.04.2006 17:18
fgets und leerzeichen notyyy PHP Tipps 2006 4 19.02.2006 23:00
leerzeichen moose PHP Tipps 2006 1 24.01.2006 18:54
Ftp: Dateinamen mit Leerzeichen PHP Tipps 2005-2 4 10.09.2005 13:18
String (Dateipfad) auf Länge und Leerzeichen überprüfen HTML, Usability und Barrierefreiheit 4 03.06.2005 12:34
[Erledigt] HTTP-Upload: Fehler wenn hochkomma im Dateinamen PHP-Fortgeschrittene 4 04.03.2005 11:10
[Erledigt] Hilfe: Leerzeichen bei SQL-Eintrag über Formular Datenbanken 2 05.09.2004 22:17
Leerzeichen aus DB-Feld werden zu einem zusammengefaßt HTML, Usability und Barrierefreiheit 2 13.08.2004 13:54

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
http://www.php.de/php-einsteiger/62665-leerzeichen-dateinamen.html, apache leerzeichen, php leerzeichen in dateinamen ersetzen, leerzeichen in dateinamen ersetzen php, html bild leerzeichen, php dateien mit leerzeichen, php datei mit leerzeichen, leerstellen in dateinamen html, html leerzeichen in dateinamen, php leerzeichen in dateinamen, apache dateinamen leerzeichen, leerzeichen in dateinamen ersetzen, php datei leerzeichen ersetzen, php dateiname leerzeichen, leerzeichen wird als 20 dargestellt, src dateiname mit leerzeichen, html leerzeichen in dateinamen ersetzen, html dateinamen leerzeichen, leerzeichen werden als dargestellt, warum keine leerzeichen in html dateinamen

Alle Zeitangaben in WEZ +1. Es ist jetzt 11:09 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum