kostenloser Webspace werbefrei: lima-city


Bilder aus Ordner lesen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    t****p

    Hallo wie kann ich das realisieren einen ganzen Ordner voll mit Bildern in eine PHP Datei einzulesen?
    Also wenn eine neue Bild Datei in den Ordner kommt soll diese auch gleich auf die Seite automatisch eingebunden werden!
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Wenn du ein Uploadscript hast, dann lass die URL des Bildes in die Datenbank einspeichern und das Bild in einen Ordner ablegen.
    Dann lässt du mit PHP die URL ausgeben und fügst das etwa so ein:
    echo "<img src=\"$bildurl\">";

  4. Wenn du ein Uploadscript hast, dann lass die URL des Bildes in die Datenbank einspeichern und das Bild in einen Ordner ablegen.
    Dann lässt du mit PHP die URL ausgeben und fügst das etwa so ein:
    echo "<img src=\"$bildurl\">";


    Viel zu kompliziert, wenn man einfach nur einen Ordner voll Bilder hat.

    <?
    $dir='dein_bilder_ordner';
    
    if(isset($dir))
    {
     $handle=opendir($dir); // ordner öffnen
     while(false!==($file=readdir($handle))) // dateiweise einlesen
     {
      if($file!='.' && $file!='..' && getimagesize($dir.'/'.$file)!='') // bildgröße sollte nicht leer sein
      {
       echo '<img src="'.$file.'" alt="" />'; // bild anzeigen
      }
     }
    }
    closedir($handle);
    ?>
  5. Das ist ja mal cool ^^
    Was ist wenn ich Dateien anzeigen will?
    z..B. Textdateien.

    <?
    if($file!='.' && $file!='..' && getimagesize($dir.'/'.$file)!='') // bildgröße sollte nicht leer sein
    ?>
    Verstehe die Zeile nicht ganz.
  6. d***********a

    seth93, es ist so:

    <?
    if($file!='.' && $file!='..' && getimagesize($dir.'/'.$file)!='') // bildgröße sollte nicht leer sein
    ?>

    Es wird überprüft, ob der aktuelle Dateiname "." oder ".." ist. Anschließend wir noch die Bildgröße überprüft.

    Ich selber find die Lösung nicht sehr gut. Ich würde lieber prüfen, ob die Dateiendung ".jpg" oder was halt gewünscht ist.
    Ich würde also per substr [http://de.php.net/substr] die letzten 4 Zeichen des Dateinamens auslesen und prüfen ob das ".jpg" ist.

    Bei Textdatein würd ichs genauso machen. Du kannst die Text-Datei dann ja per include ""; includiern :D

    Grüße dapizzafressa


  7. Ich selber find die Lösung nicht sehr gut. Ich würde lieber prüfen, ob die Dateiendung ".jpg" oder was halt gewünscht ist.
    Ich würde also per substr [http://de.php.net/substr] die letzten 4 Zeichen des Dateinamens auslesen und prüfen ob das ".jpg" ist.


    Da getimagesize nur Bilder anerkennt und bei anderen Dateien einen Fehler liefert, ist diese Variante aber besser geeignet als nur die Endung (die man ja fälschen kann) zu überprüfen. So werden wirklich nur Bilder angezeigt.
    Statt auf . und .. zu prüfen, kann man auch einfach auf !is_dir($file) prüfen, was in dem Fall vielleicht sogar praktischer ist.
  8. d***********a

    Ich war der Meinung, dass das kein öffentlich zugänglicher Ordner sein wird. Von daher ist es IMHO net so wichtig, zu prüfen, ob .jpg wirklich eine jpg ist ;)

    Warum ich das per substr machen würde: Ich bin davon ausgegangen, dass Strings überprüfen weniger CPU usw frisst, wie die Datein einzeln auszuwerten, vor allem bei einer großen Anzahl von Bildern.

    Grüße dapizzafressa
  9. Stimmt auch wieder, wenn es nicht öffentlich zugänglich ist, kann man sich natürlich sicher sein, dass es nur Bilder sind, dann braucht man es eigentlich auch gar nicht zu überprüfen. Aber substr() frisst wirklich weniger Leistung, da gebe ich dir Recht.
    Bei Verknüpfung mit einem Uploadscript sollte man jedoch besser Vorsicht walten lassen und auf Sicherheit setzen, deshalb war meine Lösung so ;)
  10. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!