• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Aktuellstes Bild der Gallerie auf der Startseite zeigen

joopy

Neues Mitglied
Hallo,
ich würde gerne aus meiner Gallerie automatisiert, nachdem ich ein Neues hochgeladen habe, das aktuellste Bild auf der Startseite anzeigen lassen. Beim klicken des Bildes sollte dann das Foto der Gallerie geöffnet werden.
Sicherlich kann ich das Bild immer nachdem ich ein Neues hochgeladen habe, aktualisieren aber es muss doch auch einen automatischen weg geben?! Youtube schafft das mit den Videos ja auch.
Den Teil mit der Verlinkung bekomme ich hin, denke ich. Aber ich weiß nicht, wie man das neuste Bild auswählen lassen könnte.
Gibt es da vielleicht eine Möglichkeit, das Änderungsdatum abzufragen und das aktuellste auszusortieren o.ä ?
Ich war mir nicht sicher, ob ich das mit HTML machen kann oder ob ich da zu JavaScript oder PHP greifen muss. Von Beidem habe ich überhaupt keine Ahnung...

Ich wär euch sehr dankbar für einen Tipp oder eine Hilfe, die zum gewünschten Ziel führt.

MfG Christian
 
Mit reinem HTML als Auszeichnungssprache wird das nicht wirklich machbar sein, es sei denn der aktuellste Upload wird immer gleich benannt, homepage.jpg, whatever. Dann müsste der Name nie geändert werden.
 
Jede Seite wird als HTML (eventuell mit eingebettetem JavaScript) zum Browser gesendet. Dort soll dynamisch immer das neueste Bild angeboten werden. Also muss der Server, bervor er die HTML-Seite sendet, diese automatisch und dynamisch aus den aktuellen Informationen über deine Bilder erstellen. Folglich musst du eine Server Scriptsprache nehmen wie PHP.
 
Ich werde einen neuen Thread erstellen und einen Mod bitten, diesen zu löschen oder kann mir einer von euch trotz der falschen Bereichswahl eine Information geben, wie möglicher Code aussehn könnte?
 
Hab das andere Topic entfernt und dieses hier zu php verschoben.

Um das "neueste" Bild anzuzeigen, musst Du zunächst irgendwie irgendwo speichern, welches das neueste ist. Besser noch eine Datenbank damit erstellen die diese Informationen zu jedem eingefügten Bild enthält. Eine Textdatei statt einer Datenbank ginge auch, würde nur bei sehr vielen Bildern etwas träge werden.

Konkrete Funktionen für diesen Anwendungsfall gibt es nicht. Die Lösung wäre schon eine selbstgestrickte passende Funktion, die wiederum einige PHP-Funktionen für diese Aufgabe nutzt.
 
Ich habe noch etwas alten Code gefunden und nicht bereinigt. Der geht durch alle Datein in einem Ordner. Man müsste einfach für jede Datei das Datum abfragen und sich die neuste Datei merken. Das funktioniert zumindest so lange, bis ein existierendes Bild mal durch ein neueres ersetzt wird, dann steht das wieder vorne. Die Alternative wäre, den Bildern eine fortlaufend wachsende Nummer geben. Von Datenbank oder Datei mit Dateiinformationen halte ich hier an dieser Stelle nicht, das ist doch alles bekannt vom Betriebssystem.

Grüße, Rainer

PHP:
       $file_dir = dir($sUploadSub);
       $file_count = 0;

        //Anzahl Dateien feststellen, bei 0 tun wir nix
        while ($file = $file_dir->read()) {
            if (!is_dir($file)) { $file_count = $file_count+1;}
        };

        if ($file_count == 0) {
            echo "<p align=\"center\"><b>Keine Dateien im Verzeichnis $sUploadUrl</b></p>\n";
       } else {

            // Überschrift erstellen (1 oder mehrere Dateien vorhanden)
            $desc_text = "Es wurden folgende $file_count Dateien";
            if ($file_count == 1) {$desc_text = "Es wurde die folgende Datei";}
            echo "<p>$desc_text zum Upload eingeliefert:</p>\n";

            echo "<table border=\"0\" width=\"100%\">
                    <tr>
                       <td><b>Name</b></td>
                       <td><b>Größe</b></td>
                       <td><b>Datum</b></td>
                    </tr>\n";
            $file_dir->rewind();
            while ($file = $file_dir->read()) {
                  if (!is_dir($file)) {
                     echo "<tr>
                              <td><a HREF='" . $sUploadUrl . urlencode($file) . "'>" . $file . "</a></td>
                              <td>" . filesize($sUploadSub . $file) . "</td>
                              <td>" . date( "d.m.Y H:i:s", filectime($sUploadSub . $file)) . "</td>
                           </tr>\n";
                  }
            }
            echo "</table>";
        };
 
Zurück
Oben