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

Webcam Bilder in die Homepage einbauen.

amimichael

Neues Mitglied
Hallo,

meine Kamera legt die Bilder im FTP Verzeichnis "cam" auf meinem Webspace , dann in den Unterverzeichnissen z.b. 2021 /09 /24 ab.
Jeden Tag, ein neues Tagesverzeichnis, jeden Monat ein Monatsverzeichnis. ... die Bilder dann mit Namen z.b. Camera1_01_20210323153223.jpg

Ich möchte gern nur das aktuellste Foto auf meiner Webseite darstellen, wie gehe ich am besten vor?

Mit php hab ich keine Erfahrung, den Code habe ich mir "zusammen-geklaut". Leider funktioniert er nicht.

<?php

$dirsj = glob(/[2021-2022]*', GLOB_ONLYDIR | GLOB_MARK);
$jlatestDir = end($dirsj);

$dirsm = glob($jlastDir/[00-12]*', GLOB_ONLYDIR | GLOB_MARK);
$mlatestDir = end($dirsm);

$dirst = glob ($mlastDir/[00-31]*', GLOB_ONLYDIR | GLOB_MARK);
$tlastDir = end($dirst);

$images = glob($tlatestDir . '*.jpg');


echo '<img src="' . end($images) . '">';
?>


Könnt ihr mir bitte weiterhelfen ?
 

m.scatello

Senior HTML'ler
Leider funktioniert er nicht.
Das ist keine Problembeschreibung.

Richtig debuggen
  1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
  2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(-1);
  3. Man verwendet ini_set('display_errors', true); damit die Fehler auch angezeigt werden.
  4. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
  5. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde. Wichtig bei MySQL Fehlern (...not a valid MySQL result resource...): mysqli_error() verwenden oder Abfrage ausgeben und zb mit phpmyadmin testen.
  6. Schritt 5 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
  7. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
  8. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
  9. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.
 

basti1012

Senior HTML'ler

amimichael

Neues Mitglied
Danke basti, habs am laufen.

<?php
$StartTime = microtime(true);
error_reporting(E_ALL);
$dt = new DateTime();


$dir = './cam/'.$dt->format('Y/m/d/');


//echo $dt->format('Y/m/d');

$handle=opendir($dir);
while ($file = readdir($handle))
{
if (strpos($file, ".jpg") !== false)
{
//$files[$file] = filemtime($dir.$file);
$files[filemtime($dir.$file)] = $file;
}
}
closedir($handle);
ksort($files);
//print_r(end($files));

$last_snap = end($files);


$file_last_snap = $dir . $last_snap;


echo '<img src="' . $file_last_snap . '">';
 
Werbung:
Oben