PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Immer das letzte Bild ausgeben aus Ordner (http://www.selfphp.de/forum/showthread.php?t=26134)

koga 14.08.2018 20:23:32

Immer das letzte Bild ausgeben aus Ordner
 
Guten Abend,

ich möchte aus einem Ordner in dem per FTP Bilder hochgeladen werden (alle 30 Sek.) immer das aktuellste Bild im Browser ausgeben.
Dazu habe ich versucht mit folgendem Script die Aufgabe zu erfüllen was aber nicht richtig funktioniert da immer das erste Bild angezeigt wird was hochgeladen wurde.

Script:
Code:

<?php
$images = glob("PSD-122910-ACFDD/*.{jpg,jpeg,png,gif}", GLOB_BRACE);
echo '<img src="' . $images[0] . '">';
?>

Die Bilder werden in folgenden Format hochgeladen (auf die Bezeichnung habe ich keinen Einfluss):
Code:

00_14_5C_95_29_78_PSD-122910-ACFDD_2_20180814174014_8.jpg
00_14_5C_95_29_78_PSD-122910-ACFDD_2_20180814173944_7.jpg
00_14_5C_95_29_78_PSD-122910-ACFDD_2_20180814173613_0.jpg
00_14_5C_95_29_78_PSD-122910-ACFDD_2_20180814173342_5.jpg
usw.

Ich hoffe ich habe mich verständlich ausgedrückt.

vt1816 15.08.2018 08:09:07

AW: Immer das letzte Bild ausgeben aus Ordner
 
Woran erkennst Du welches Bild das letzte ist welches hochgeladen wurde? Sollte die Information im Dateinamen stecken, nimm nach dem Auslesen die Dateinamen auseinander und zeige die Datei mit dem jüngsten Datum/Zeit Stempel an.

koga 15.08.2018 11:41:14

AW: Immer das letzte Bild ausgeben aus Ordner
 
Danke für die schnelle Antwort. Die hat mich auf die richtige Richtung gebracht.
Ich habe das jetzt so gelösst das von den zwei vorhandenen Bildern im Ordner immer der älteste (Updatezeit) gelöscht wird.

Falls es jemanden interessiert:
Code:

$Pfad="../PSD-122910-ACFDD"; // Welches Verzeichnis soll untersucht werden

if($Verzeichniszeiger=opendir($Pfad)): // Verzeichnis existiert?
    while($Datei=readdir($Verzeichniszeiger)):
        if ($Datei!="." AND $Datei!=".." AND !is_dir($Datei)): // Handelt es sich um eine Datei?
            if (filemtime($Pfad.'/'.$Datei) + $alterals < time() AND (in_array(pathinfo($Pfad.'/'.$Datei, PATHINFO_EXTENSION), $extensions))):
                unlink($Pfad . '/' . $Datei);  //lösche
                //print($Datei . ' wurde gelöscht<br>');
            endif;
            $liste[] = $Datei;
        endif;
    endwhile;
endif;
closedir($Verzeichniszeiger);

Jetzt habe ich in Bezug auf das Script eine Frage, die Bilder werden in der Zeit von 07 - 19 Uhr hochgeladen. Ab 19 Uhr ist der Ordner leer. Nun möchte ich das so realisieren das wenn der Ordner leer ist also die Abfrage kein Ergebniss liefert das ein Ersatzbild angezeigt wird.
Wie kann ich da am besten vorgehen?

vt1816 18.08.2018 02:16:26

AW: Immer das letzte Bild ausgeben aus Ordner
 
Schon mal etwas von if() gehört/gelesen? Frage die Uhrzeit ab oder falls Du kein Bild findest, dann kommt Dein Ersatzbild zur Anzeige. In allen anderen Fällen zeigst Du das letzte hochgeladene Bild an.

koga 18.08.2018 10:41:24

AW: Immer das letzte Bild ausgeben aus Ordner
 
Guten Morgen,

habe es jetzt mit einer If Abfrage gelöst. Wenn der Ordner leer ist wird ein Ersatzbild angezeigt.
Danke vt1816 für Deine Ansätze die haben mir weitergeholfen.

vt1816 19.08.2018 11:24:44

AW: Immer das letzte Bild ausgeben aus Ordner
 
... immer wieder gerne!


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:25:52 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.