Alle Bilder aus einem Ordner anzeigen lassen...

10/19/2013 18:24 lnqlorlouz#1
Hallo,

ich weiß überhaupt nicht wie das heißt, afaik nicht wie ich dann danach suchen soll. :P

Ich habe einen img-Ordner, dort sind Level Icons drin von 1-100 im Format .png.
Nun möchte ich aber nicht immer:
<img src="/img/1.png"> bis <img src="/img/100.png"> machen.

Weiß einer wie das geht, bzw. hat mir einer einen Link? :)

Und etwas anderes:
Ich habe einen Hintergrund, möchte das Bild mittig setzen und wenn es den Bildschirm nicht füllt, der Hintergrund schwarz ist. Aber leider habe ich überhaupt keine Ahnung von CSS.

Danke
10/19/2013 18:29 Lucky´s#2
Schlechte Lösung, aber eine Lösung:

Code:
  <?php
     for($i = 1; $i <= 100; $i++)
     { ?>
       <img src="/img/<?php echo $i; ?>.png">
   <?php } ?>
10/19/2013 18:37 lnqlorlouz#3
Quote:
Originally Posted by Lucky´s View Post
Schlechte Lösung, aber eine Lösung:

Code:
  <?php
     for($i = 1; $i <= 100; $i++)
     { ?>
       <img src="/img/<?php echo $i; ?>.png">
   <?php } ?>
Wieso ne schlechte Lösung? :D
10/19/2013 18:40 Lucky´s#4
Weil es bestimmt einen besseren Weg gibt, der fällt mir nur momentan nicht ein :D
10/19/2013 19:18 lnqlorlouz#5
Irgendwo ist der Wurm drinnen... :D
[Only registered and activated users can see links. Click Here To Register...]
Oben klappt es und unten nicht...
Der Code oben:
PHP Code:
<?php
     
for($i = Rank_001; $i <= Rank_100; $i++)
     { 
?>
       <img src="/img/nexonlevel/<?php echo $i; ?>.png">
   <?php } ?>
Der Code unten:
PHP Code:
<?php
     
for($i = 001; $i <= 100; $i++)
     { 
?>
       <img src="/img/3d/<?php echo $i; ?>.png">
   <?php } ?>
Die Bilder unten zeigt es mir so an:
[Only registered and activated users can see links. Click Here To Register...] - obwohl ich = 001 gesetzt habe!
Das einzige was richtig angezeigt wird: das 100er Icon.
10/19/2013 19:37 lnqlorlouz#6
Quote:
Originally Posted by Lucky´s View Post
Du versucht "Rank_001" zu erhöhen, das ist mit deiner Schreibweise aber nicht möglich.
Bist du dir sicher dass der Code mit Rank_001 funktioniert und nicht der andere?

Code:
   <?php
      for($i = 1; $i <= 100; $i++)
      { ?>
       <img src="/img/nexonlevel/Rank_<?php echo $i; ?>.png">
   <?php } ?>
Müsstest dann wohl deine Bilder so umbennen, dass sie nicht Rank_001 heißen, sondern Rank_1
Nene, die ersten Bilder klappen ja mit Rank_001 bis Rank_100.

Dann wollte ich noch andere Level Icons anzeigen lassen, die haben den Namen:
001.png bis 100.png
Die wollte ich so anzeigen lassen:
Code:
   <?php
      for($i = 001; $i <= 100; $i++)
      { ?>
       <img src="/img/nexonlevel/Rank_<?php echo $i; ?>.png">
   <?php } ?>
Aber das geht komischerweise wieder nicht. :D

Geht das nicht noch irgendwie mit scandir oder dir Funktionen?

So funktioniert das auch nicht.
Code:
<?PHP
   $path = "/img/3d/"; 
   $dir = opendir($path);   
   $extensions = array("jpg", "bmp", "gif", "jpeg", "png");  
	while(($file = readdir($dir)) !== false) 
			{   
			if(in_array(pathinfo($file, PATHINFO_EXTENSION), $extensions)) 
			{ 
   $filename = explode(".", $file);
				echo '<img src=".$path.$file.">'; ?>
10/19/2013 19:44 Lucky´s#7
Okay wollte gerade meinen Post editieren und nu iser Weg... okay :D
Zeigt das untere denn ein Bild an, die Nr. 100 ?

PHP behandelt deine 001 wie eine 1, 00 fällt also weg!
Müsstest wohl wieder Rank_ davorsetzen.

Also so wie du es vorher hattest:

Code:
  <?php
      for($i = Rank_001; $i <= Rank_100; $i++)
      { ?>
       <img src="/img/nexonlevel/<?php echo $i; ?>.png">
   <?php } ?>
€: (Skype)
10/19/2013 19:49 lnqlorlouz#8
Quote:
Originally Posted by Lucky´s View Post
Okay wollte gerade meinen Post editieren und nu iser Weg... okay :D
Zeigt das untere denn ein Bild an, die Nr. 100 ?

€: (Skype)
Konnte es nun lösen:
PHP Code:
<?php
      
for($i = 1; $i <= 100; $i++)
      { 
?>
       <img src="/img/3d/0<?php echo $i; ?>.png">
   <?php } ?>
Danke dir trotzdem nochmal!
Der Fehler lag hier drin:
PHP Code:
<img src="/img/3d/0 
10/21/2013 10:41 mhaendler#9
Code:
<?php
// Ordnername
$ordner = "images"; //auch komplette Pfade möglich ($ordner = "download/files";)
 
// Ordner auslesen und Array in Variable speichern
$allebilder = scandir($ordner); // Sortierung A-Z
// Sortierung Z-A mit scandir($ordner, 1)                               
 
// Schleife um Array "$alledateien" aus scandir Funktion auszugeben
// Einzeldateien werden dabei in der Variabel $datei abgelegt
foreach ($allebilder as $bild) {
 
    // Zusammentragen der Dateiinfo
    $bildinfo = pathinfo($ordner."/".$bild);
    //Folgende Variablen stehen nach pathinfo zur Verfügung
    // $dateiinfo['filename'] =Dateiname ohne Dateiendung  *erst mit PHP 5.2
    // $dateiinfo['dirname'] = Verzeichnisname
    // $dateiinfo['extension'] = Dateityp -/endung
    // $dateiinfo['basename'] = voller Dateiname mit Dateiendung
 
    // Größe ermitteln für Ausgabe
    $size = ceil(filesize($ordner."/".$bild)/1024);
    //1024 = kb | 1048576 = MB | 1073741824 = GB
 
    // scandir liest alle Dateien im Ordner aus, zusätzlich noch "." , ".." als Ordner
    // Nur echte Dateien anzeigen lassen und keine "Punkt" Ordner
    // _notes ist eine Ergänzung für Dreamweaver Nutzer, denn DW legt zur besseren Synchronisation diese Datei in den Orndern ab
    // Thumbs.db ist eine Ergänzung unsichtbare Dateiergänzung die von ACDSee kommt
    // um weitere ungewollte Dateien von der Anzeige auszuschließen kann man die if Funktion einfach entsprechend erweitern
    if ($bild != "." && $bild != ".."  && $bild != "_notes" && $bildinfo['basename'] != "Thumbs.db") {
    ?>
        <img src="<?php echo $bildinfo['dirname']."/".$bildinfo['basename'];?>" width="140" alt="Vorschau" />
<?php
    };
};
?>
Musst nur noch die Pfade erweitern, dann sollte diese Lösung passen, ohne irgendein for mit statischen Bildernamen, a'la 001, 002 etc. :)