php: file_exists() liefert keinen wert

csp1233

Grünschnabel
hi,

erklärung:
im Verzeichnis PICs sind bilder in der form
zahl.jpg oder
zahl.gif oder
zahl.png
gespeichert

es sollte erstmal die dateierweiterung abgefragt werden, um dann die bilder anzuzeigen

meine vermutung: mit dem verzeichniswechsel kommt file_exists nicht klar

danke euch !

PHP:
   if (file_exists ("../PICs/$Bilddatei.jpg")) {$bildart = ".jpg";}
   if (file_exists ("../PICs/$Bilddatei.gif")) {$bildart = ".gif";}
   if (file_exists ("../PICs/$Bilddatei.png")) {$bildart = ".png";}
   
   echo $Bilddatei; // wird angezeigt
   echo $bildart;    // liefert keinen wert :-(
 
In welchem Ordner liegt das Script? In einem anderen Unterordner als die Bilder? Liegt es im übergeordneten Ordner der Bilder, muss es "PICs/$Bilddatei.jpg" heißen.
 
hi mAu,

Verzeichnis für PHP: .. / Hauptverzeichnis / Verzeichnis A / PHP-Files
Verzeichnis für die Bilder: .. / Hauptverzeichnis / Verzeichnis B / Bilder
 
Entsprechend diesen Pfadangaben sollte Dein Pfad dann doch eher so aussehen, oder?
../../Verzeichnis B/Bilder

Also erstmal 2 Ebenen runter und dann in den anderen Ast des Baumes abbiegen.

Uebrigens, aus Gruenden der Lesbarkeit wuerde ich
PHP:
file_exists ("../PICs/$Bilddatei.jpg")
durch
PHP:
file_exists('../PICs/'.$Bilddatei.'.jpg')
ersetzen. Aber das ist eher Geschmackssache, funktional aendert sich hier nichts.
 
hi nochmal,

dennis, du hast mich auf ein idee gebracht und es funktioniert, die lösung war die schreibweise :-)

danke euch !

vollständigkeisthalber:

PHP:
   if (file_exists ("../PICs/".$Bilddatei.".jpg")) {$bildart = ".jpg";}
   if (file_exists ("../PICs/".$Bilddatei.".gif")) {$bildart = ".gif";}
   if (file_exists ("../PICs/".$Bilddatei.".png")) {$bildart = ".png";}
   
   echo $Bilddatei.$bildart;
 
Zurück