Einzelnen Beitrag anzeigen
  #1  
Alt 03.05.2016, 10:48:28
pepe2264 pepe2264 ist offline
Anfänger
 
Registriert seit: May 2016
Alter: 35
Beiträge: 1
Bilder aus Verzeichnis auslesen, sortieren und nach Bedarf ausblenden

Guten Morgen,

vorab ich bin ein Anfänger in PHP und freue mich über jeden Tipp, Lösung oder Anregung.

Ich habe folgende Aufgabe zu lösen:

Schreibe eine PHP Datei die in einem Verzeichnis liegt mit mehreren Ordnern die jeweils entweder zwei Bilder oder drei Bilder beinhalten Diese Bilder heißen immer gleich :

1. vorlage.png
2. test.png
3. diff.png

Die diff.png wird nur in manchen Ordnern vorkommen.

Beim Aufrufen der PHP Datei soll nun eine Tabelle ausgegeben werden mit dem Ordner Namen und der jeweilig beinhalteten Dateien als kleine Bild Kacheln (Vorschau) diese Sollen angeklickt werden und dadurch Vergrößert angezeigt werden.
Bei den Fehlenden Bildern soll das Kästchen einfach weiß bleiben
Sobald das alles läuft sollte noch nach vorhandenem Diff bild sortiert werden und Ordner ohne Diff Bild auf "Button klick" ausgeblendet werden

Ich habe soweit einige Zeilen geschrieben ich kriege die Tabelle Angezeigt kann die Bilder auch anklicken soweit so gut. Leider komme ich mit der Sortierung nicht weiter mir fehlt einfach die Idee wie ich das realisieren kann mit usort komme ich da denke ich nicht weiter. Ich bräuchte eine Variablen abhängige Sortiereung

Ausgabe:
https://www.dropbox.com/home?preview=Ausgabe.JPG

Code:
PHP-Code:
<?php
  
  
//error_reporting(0); // ist nur drin weil ich durch das unset($diff) eine Fehlemeldung bekomme das die Variable §diff nicht benutzt wird 
  
  
$myDirectory opendir(".");
  
  while(
$entryName readdir($myDirectory)) 
  {
    
$dirArray[] = $entryName;
  }
  
  
closedir($myDirectory);
  
sort($dirArray);
  
$indexCount count($dirArray);
  
  
  print(
"<TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks id=\"maintable\">\n");
  print(
"<TR><th> SEITENNAME </th><th>REF</th><th>IST</th><th>DIFF</th></TR>\n");
  
 for (
$i 0$i $indexCount$i++) 
  { 
    
    if (
is_dir($dirArray[$i]))
    { 
    
__DIR__ '/..';
    
    foreach (
glob($dirArray[$i] ."/test.png") as $test
    {
    
    }

    foreach (
glob($dirArray[$i] ."/vorlage.png") as $vorlage
    {
   
    }
    
    foreach (
glob($dirArray[$i] ."/diff.png") as $diff
    {
    
    }
  
    print(
"<td><a href=" .$dirArray[$i] . ">" .$dirArray[$i]. "</a></td>");
    print(
"<td><a href=" $test "><center>  <img src=\"" $test "\" width=\"150\" height=\"150\" ></center></td>");   // Dateiname Ausgabe
    
print("<td><a href=" $vorlage "><center>  <img src=\"" $vorlage "\" width=\"150\" height=\"150\" ></center></td>"); // Bild Ausgabe aus Datei
    
print("<td><a href=" $diff "><center>  <img src=\"" $diff "\" width=\"150\" height=\"150\" ></center></td>");     // Bild Ausgabe aus Datei
    
print("</TR>\n");
    }
    
    else
    {
    echo (
"  ");
    }
    unset(
$diff); // unset benutze ich da sonst Obwohl kein Bild diff in einem Ordner vorhanden ist ein Bild ausgegeben wird
    
}
    
?>
Ich habe viele Foren Deutsch /Englisch durchsucht aber komme leider seit einiger Zeit nicht weiter mit der Aufgabenstellung und hoffe das mir hier Jemand weiterhelfen kann.

Vielen Dank !

Gruß
Peter
Mit Zitat antworten