Diese Website verwendet zurzeit keine Cookies. Datenschutzerklärung Antworten zu häufig gestellten Homepage-Fragen
 Alle Anleitungen
Einige Anleitungen
Kostenl. Partnerlinks
[,__,] Druckversion

Hinweis: Die Website Homepage-FAQs.de befindet sich seit 2012 im Archivmodus, d.h. sie wird nicht mehr aktualisiert.
FAQS zu HP&Co.
Webcam - nur das neuestes Bild innerhalb eines Verzeichnisses anzeigen und alle alten Bilder / Dateien darin löschen
(Zuletzt überarbeitet im August 2018)

Die Aufgabenstellung

Eine Webcam, die Bilder per FTP auf den Webspace hochlädt, aber nicht den gleichen Dateinamen verwenden kann, sondern verschiedene Dateinamen, so dass der aktuelle Dateiname unbekannt ist und die alten Dateien nicht überschrieben werden.

Lösungsansatz

Ein PHP-Script, der immer das aktuelle Bild anzeigt, egal wie es heisst und alle alten Dateien im Bilderverzeichnis löscht, so dass es nicht übervoll wird und keine manuelle Löschungen erforderlich sind. Eine Ausnahme gibt es bei Version C, hier werden die alten Bilder erst nach x Tagen (einstellbar) gelöscht, so dass man noch auf einige alte Bilder zugreifen kann.

Das PHP-Script (in 3 Versionen verfügbar)

NEU: Version C: Bilder, die älter als x Tage (einstellbar) sind werden gelöscht, sonst gleich wie Version B.

Version A > http://www.homepage-faqs.de/zip/aktuelles-bild-anzeigen-alle-alten-loeschen.zip

Version B > http://www.homepage-faqs.de/zip/aktuelles-bild-anzeigen-alte-loeschen-fester-dateiname.zip

Hinweis: Version B mit festem Dateinamen (Bild wird vom Script umbenannt und gespeichert), sonst gleich wie Version A.

Version C > http://www.homepage-faqs.de/zip/aktuelle-bild-anzeigen-alte-nach-x-tagen-loeschen-fester-dateiname.zip (hinzugefügt im Juni 2018)

Hinweis: Version C löscht die alten Bilder nicht sofort, sondern erst nach x Tagen, sonst wie Version B.

Für spezielle Probleme gibt es am Ende der Seite Ergänzungen bzw. Änderungen zum PHP-Script oder zu den Webcam-Einstellungen, siehe


Anpassungen im PHP-Script

A) Verzeichnisangaben (bei Include in eine Datei: vom Verzeichnis der Datei mit dem Include-Befehl ausgehend)

//Verzeichnis/-pfad (Bilder und Script nicht ins gleiche Verzeichnis!!!)
$verzeichnis = './bilder/';

./ bedeutet vom aktuellen Verzeichnis aus ins Verzeichnis bilder/ rein

B) Bildmasse festlegen (am besten die Originalmaße der Webcambilder angeben, evtl. proportional verkleinerte Maße)

//Bildbreite und -höhe festlegen
$bildbreite = "480";
$bildhoehe = "320";

C) Fester Dateiname für das aktuelle Bild (nur bei Version B und C vorhanden)

//Fester Dateiname des Bildes
$bildname = 'webcam.jpg';

D) Anzahl der Tage nach denen die alten Bilder gelöscht werden (nur bei Version C vorhanden)

// Anzahl der Tage nach denen die Bilder gelöscht werden sollen
$delanztage = 7;

Anmerkung zu C): Einige User möchte, dass das aktuelle Webcam-Bild einen festen Dateinamen hat, da sie es auch noch woanders einbinden wollen. Allerdings wird das Bild (das woanders eingebunden ist) nur aktualisiert wenn regelmässige Besucher das PHP-Script bzw. die Seite mit dem PHP-Script aufrufen bzw. wenn ein Cronjob diese Aufgabe übernehmen würde. Cronjobs sind bei manchen Webspacepaketen dabei, sonst einen Cronjobanbieter (z.B. https://www.cronjob.de/) nutzen.

Hinweis gilt für A), B), C) und D):
Die rotmarkierten Stellen im PHP-Code anpassen.


Einbau in Webseite

1.) Die Datei aktuelles-bild-anzeigen-alle-alten-loeschen.php aus der ZIP umbenennen (wegen der Länge) in webcam.php

2.) An der Stelle auf der Seite, an der das Webcambild erscheinen soll, wird im Quelltext dieser PHP-Code eingebaut

<?php include("webcam.php"); ?>

Anmerkung: Die Datei webcam.php natürlich auch auf den Webspace hochladen, genauso wie die Datei mit dem Include-Code.

Wichtig:
Bei den meistens Webspaces muss die Datei mit dem Include-Code die Endung .php erhalten, evtl. auch Navigationspunkt bzw. Verlinkung anpassen.

Direkte Adresse (URL) zum Webcambild (falls externe Einbindung benötigt)

Die Datei aktuelles-bild-anzeigen-alle-alten-loeschen.php umbenennen (wegen der Länge) in webcam.php und ins Hauptverzeichnis hochladen.

Das Webcambild hätte in diesem Fall eine Internetadresse nach dem Schema >>
http://www.meine-seite.de/webcam.php

Anmerkung:
Natürlich die eigene Adresse bei 
www.meine-seite.de angeben.

Problem 1: Webcam erstellt immer ein Unterverzeichnis im Datumformat

Useranfrage

Meine Webcam erstellt auf den FTP Server im Verzeichnis ./Bilder/ immer ein Unterverzeichnis im DatumFormat, z.B. 5_28_2008, was soweit eigentlich auch ganz schön ist. Nur, somit muss ich jeden Tag die Datei nur-neue-bilder.php auf der HP anpassen, an das neue Verzeichnis. Gibt es dafür auch eine Lösung?

Lösung

Mal in meinem Script diese Stelle suchen

//Verzeichnis/-pfad (Bilder und Script nicht ins gleiche Verzeichnis!!!)
$verzeichnis = './bilder/';

und ändern in

//Verzeichnis/-pfad (Bilder und Script nicht ins gleiche Verzeichnis!!!)
$aktuell_datum = date("n_j_Y");
$verzeichnis = './bilder/'.$aktuell_datum.'/';

damit das Datum im Format Monat_Tag_Jahr (ohne führende Null, Jahr vierstellig) als Verzeichnisname genommen wird, allerdings habe ich es noch nicht getestet.

Problem 2: Es gibt eine Zeitverschiebung, da die Camera sich auf GMT bezieht

Zusatzfrage

Und es gibt noch eine Zeitverschiebung von 2 Stunden, da die Camera sich auf GMT bezieht. Kann man angeben das sich

$aktuell_datum = date("n_j_Y");

auf GMT bezieht ?

Lösung:

Mal mit gmdate statt date versuchen, siehe Infos unter http://de3.php.net/manual/de/function.gmdate.php

//Verzeichnis/-pfad (Bilder und Script nicht ins gleiche Verzeichnis!!!) 
$gmt_datum = gmdate("n_j_Y"); 
$verzeichnis = './bilder/'.$gmt_datum.'/';

Problem 3: Es werden teilweise nur halbe Bilder angezeigt, weil die Übertragung des Bildes per FTP noch nicht angeschlossen ist

Userfrage

... allerdings gibt es da noch ein Problem bei der Übertragung mit unser GSM Cam - da wird manchmal nur ein halbes Bild angezeigt.

Lösung:

MOBOTIX Online-Hilfe
===================

(Anmerkung: Dürfte bei anderen Webcams ähnlich sein)

Legen Sie für jedes Profil im Dialog FTP-Profile die folgenden Parameter fest:
...
...
Parameter = Temporärer Name

Wenn Sie diese Option aktivieren, wird das Bild während der FTP-Übertragung in einer temporären Datei zwischengespeichert. Nachdem das Bild vollständig übertragen wurde, wird es umbenannt.

Aktivieren Sie diese Option, um zu vermeiden, dass Bilder unvollständig angezeigt werden, bevor die Übertragung abgeschlossen ist.


Quelle: http://webcam.vhs-ehingen.de/help/help?ftp



Siehe auch



Anleitung (C) 2008, 2010, 2018 Daniel Wurst - http://www.homepage-faqs.de