phpbar.de logo

Mailinglisten-Archive

[php] Abfrage

[php] Abfrage

OLMAYER @ WEB olmayer at web.de
Mo Feb 1 16:13:15 CET 2010


Hallo Tim,
mein Problem ist eigentlich nur,
1.) er soll mir das bild $trackmania.jpg anzeigen, wenn vorhanden ist, das
macht er wenn ich
if (!file_exists($image_map)){...................}
schreibe. Dann zeigt er mir aber nicht das bild no_map an wenn eine datei
mit dem Namen aus $trackname nicht vorhanden ist.
2.) in $trackmania liegt der Name des tracks der auf dem Gameserver gerad
läuft, dieser kann auch mit farbcodes sein.
Die Abfragen gehen alle keine probleme.
Jedes bild für die einzelenen tracks setzt sich zusammen aus dem $trackname
und der endung.hier jpg
Diese Screens werden auf einer Webseite in dem Ordner
uploads/trackmania/tracks_image/ gespeichert.
Ist hier nun eine datei mit $trackname.jpg vorhanden zeige das bild an.
Ist diese hier nicht vorhanden zeige no_map.gif an.
Ursprünglicher code war dieser :

       $map ="/uploads/trackmania/track_images/".$trackname.".jpg"; // hier
liegt das Bild mit dem Namen und der Endung

         if (file_exists($map)) {
//Ist die datei vorhanden alles gut zeige Sie an
    $image_map = "/uploads/trackmania/track_images/".$trackname.".jpg";

   }

   else {           // Ist Sie nicht da zeige no_map

      $image_map ="/uploads/trackmania/track_images/no_map.gif";
   }
Meine Ausgabe der datei erfolgt dann mit $image_map was auch soweit
geht.wenn ich
if (file_exists($map)) ändere in if (!file_exists($map)) nur dann zeigt er
eben das eine oder das andere nicht an.

Und da liegt der Wurm ist datei da anzeigen ist nicht da andere anzeigen,
das macht er nur wenn ich eben wie geschrieben
if (file_exists($map)) ändere.

Hoffe habe es verständlich dargestellt.





----------------------------------------------------------

Hoffe das das jetzt kein Spam ist.

Gruß



-----Ursprüngliche Nachricht-----
Von: php-bounces at phpbar.de [mailto:php-bounces at phpbar.de] Im Auftrag von Tim
Gesendet: Montag, 1. Februar 2010 15:39
An: 'deutschsprachige PHP-Mailingliste'
Betreff: Re: [php] Abfrage

> Hi,

Hallo Olly,

> übernommen
> ebenso die tracknamen.
> Das System was dahinter steckt ist das Clansphere CMS.
> Ich weiß nicht wie weit das relevant sein kann.

kann es sein, dass Du zwei verschiedene Pfade verwechselst bzw. falsch
anwendest? Zum einen möchtest Du prüfen, ob eine bestimmte Datei auf
Deinem Server liegt. Das meint, dass diese Datei physisch auf der
Festplatte liegt und dass der Pfad dort hin ein anderer Pfad ist als
der, der später Verwendung im HTML Code der Website findet.

Du solltest also mit dem physischen Pfad des Server-Dateisystems prüfen,
ob die Datei vorhanden ist und dann das Ganze im HTML Code so umsetzen,
dass das dann auch relativ (oder absolut) zum Ort auf Deiner Website
passt.

Ein Beispiel:

Der Webserver speichert alle Domains hier zum Beispiel):

/home/httpd/web/


Deine Domain liegt dann im Ordner "trackmania". Also wäre der Pfad dann
so:

/home/httpd/web/trackmania/
                           index.php
                           index.html
                           (u.s.w)


Dann wären die beiden Pfade für ein und das selbe Bild diese hier:

Physisch auf dem Webserver:
/home/httpd/web/trackmania/track_images/beispiel.gif


Auf der Website:
http://www.trackmania.de/track_images/beispiel.gif
                         |-----------------------|


Das bedeutet, dass Deine Prüfung so aussehen müsste:

$filepath = "/home/httpd/web/trackmania/track_images/" . $trackname .
".gif";
if(file_exists($filepath)) {
  $htmlpath = "track_images/" . $trackname . ".gif";
} else {
  $htmlpath = "track_images/no_map.gif";
}


Wichtig ist auch, dass $trackname nicht auch schon die Endung mit
beinhaltet!!! Angenommen, die Variabel sähe so aus:

$trackname = "beispiel.gif";

Dann würdest Du in Deinem Beispiel ja auf die Datei
"[...]/beispiel.gif.gif" testen und die dürfte es wohl nicht geben.


Liebe Grüße
Tim





-- 
** Allgemeine deutschsprachige PHP-Liste: php at phpbar.de **
Informationen: http://www.phpbar.de
http://lists.phpbar.de/mailman/listinfo/php


php::bar PHP Wiki   -   Listenarchive