Aktuellestes Bild aus Ordner+Unterordner anzeigen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Aktuellestes Bild aus Ordner+Unterordner anzeigen

    Hallo Jungs und Mädels im Forum,

    wie meistens so hat mich Googel auf die Seite gebracht. Habe mich bei euch im Forum durchgewühl und mir paar Codeschnipsel zusammengesucht, nur leider krieg ich es nicht so hin, wie ich das möchte.
    Hintergrund: Ich habe mir einen Video-Server zugelegt, der alle 5 Minuten ein Bild auf meinen Server legt. Das Bild an sich hat den Dateinamen:

    16_28_37GMT.jpg für 16:28:37

    Für jeden Tag wird ein neuer Ordner angelegt:

    3_19_2009 für 19.3.2009

    Nun möchte ich, dass das Script aus dem Verzeichnis /webcam/xx_xx_xxxx, also aus allen Bildern von allen Tagen, das zuletzt auf den Server gelegte ausliefert sowie mir anzeigt, zu welcher Zeit das Bild erstellt wurde. Ich habe mir folgenden Code bisher zusammengeklaut, nur funktioniert der leider nicht richtig, sprich mal zeigt es ein Bild an, mal nicht:

    PHP-Code:
    <? $pfad = 'webcam/3_19_2009'; 
    $bild = ''; 
    $dir = opendir ($pfad); 
    while ($file=readdir($dir))
       if (!$bild || filemtime($bild)<filemtime("$pfad/$file"))
         $bild = "$pfad/$file"; 
    echo '<img src="'. $bild. '">';

    $datei = '$bild'; $zeit = filectime($bild); 
    echo "Erstellt am:" .gmdate("d M Y H:i:s", $zeit); ?>
    Ich hoffe ihr könnt mir weiterhelfen, hab leider nichts weiteres dazu im Forum hier gefunden.

    Besten Dank schonmal im Voraus für die Hilfe

    Viele Grüße
    Matze

  • #2
    brich bitte erst mal deinen code so, dass man nicht horizontal scrollen muss und ihn auch vernünftig lesen kann.

    peter
    EDIT:
    das ging aber schnell
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Ja, drum sollte man eben erstmal die Vorschau-Funktion nutzen.*schäm*

      Kommentar


      • #4
        als erstes solltest du bei der while-schleife mal mit geschweiften klammern arbeiten, damit man sehen kann, wie weit die geht.

        peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Das Bild an sich hat den Dateinamen:

          16_28_37GMT.jpg für 16:28:37

          Für jeden Tag wird ein neuer Ordner angelegt:

          3_19_2009 für 19.3.2009
          Dann greif doch nicht auf jedes Bild einzeln zu, sondern hol dir nur ne Liste der Dateinamen und entscheide danach, welches das aktuellste ist. Das dürfte die Performance doch enorm steigern!

          als erstes solltest du bei der while-schleife mal mit geschweiften klammern arbeiten, damit man sehen kann, wie weit die geht.
          Zeile 6. Eine Leerzeile danach hätte es jedoch übersichtlicher gemacht.

          Kommentar


          • #6
            Pseudocode:

            PHP-Code:
            $dirs glob(webcam,alle verzeichnisse);
            $newest 0;

            foreach(
            $dirs as $dir)
            {
              
            $ts wandel_in_timestamp($dir);
              if(
            $ts $newest)
                
            $newest ts;
            }

            $path wandel_in_dir($newest);


            $dirs glob($path,alle verzeichnisse);
            $newest 0;

            foreach(
            $dirs as $dir)
            {
              
            $ts wandel_in_timestamp($dir);
              if(
            $ts $newest)
                
            $newest ts;
            }


            $path.= wandel_in_dir($newest);

            ... 

            Kommentar


            • #7
              Danke für eure Antworten. Ihr müsst mit mir normales Deutsch reden, ich hab nämlich praktisch keinen Plan von PHP. Ich hab mir meinen Code von oben nur zusammengesucht von euch hier. Was ich da eigentlich mach weiß ich leider nicht.

              Kommentar


              • #8
                *projekthilfe*

                Kommentar


                • #9
                  So jetzt klappt alles soweit, vielen Dank!

                  Kommentar


                  • #10
                    Dann poste doch bitte noch die Lösung für andere User mit ähnlichem Problem...

                    Kommentar

                    Lädt...
                    X