PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Webcam -> Bild aktualisieren



bjoernt
13.03.2006, 22:32
Hallo!

Habe eine Webcam, habe ein Skript takepic.sh geschrieben,
dieses liegt auf meinem WWW-Server, local in /srv/www/htdocs/webcam/takepic.sh

Wenn ich es als Benutzer ausführe, so erstellt es in diesem Verzeichnis
ein neues Bild cam.jpg.

Die Index.html zeigt dieses Bild an, also wenn ich eingebe (I-Net-Explorer):
localhost/webcam/
so sehe ich das aktuelle Webcambild.

Nun möchte ich einen Button auf der index.html haben,
der das Skript aufruft und die Seite aktualisiert,
so dass ich das jetzt neue aktuelle Bild der Cam sehe.

Habe perl, php... Wie setze ich das denn am besten um?
Muss eigentlich ja nur das Skript aufrufen...

Schönen Abend
Björn

devilz
13.03.2006, 22:38
Würde dir nicht ein automatisches Reloaden mittels refresh ausreichen ?



<meta http-equiv="refresh" content="600">


Einfach in den Header der index.html und 600 durch deine Zeit in Sek ersetzen ...

bjoernt
13.03.2006, 22:47
Ja,

aber das Skript muss ja auch aufgerufen werden, weil
dieses Skript das alte cam.jpg löscht und ein neues Bild schiesst.

Ich könnte das Skript über einen Cronjob alle 30s starten,
möchte aber lieber einen Button auf der Seite unter dem
Bild haben...

MfG trotzdem danke :D
Björn


########### Edit ##############

Habs hinbekommen, geht mit system...

MfG
Björn

Havoc][
14.03.2006, 08:36
Habs hinbekommen, geht mit system...
Schade. Ein paar Informationen wären ganz hilfreich gewesen. Du willst doch auch das man dir hilft, wieso nimmst du dir nicht die Zeit und beschreibst eben wie du es hinbekommen hast?

Havoc][

bjoernt
14.03.2006, 11:43
[']Schade. Ein paar Informationen wären ganz hilfreich gewesen. Du willst doch auch das man dir hilft, wieso nimmst du dir nicht die Zeit und beschreibst eben wie du es hinbekommen hast?

Havoc][

Ich fand die Lösung ziemlich trivial,
ich bin nicht draufgekommen weil ich mich Null mit PHP auskenne...

Aber ich beschreibe die Lösung gerne, habe momentan zwei Methoden:

a)
auf die Index.php das

<meta http-equiv="refresh" content="5">
von devilz setzen. Und dann noch einfügen:

<?php system("/srv/www/htdocs/webcam/takepic.sh"); ?>

=> nach 5 sekunden wird das Skript gestartet (wenn jemand die Seite ansieht) und das aktuelle Bild angezeigt (Bild anzeigen einfach mit

<IMG SRC="cam.jpg" ALIGN="BOTTOM" WIDTH=352 HEIGHT=288 BORDER=1 ALT="Webcamshot" style="border-color: blue;">)

Problem (dehalb mache ichs nicht so):
Wenn mehrere Leute die Seite anzeigen, wird das Skript dauernd und parallel gestartet... => hohe Systemlast => bööööse :devil:

b) (So mache ichs jetzt)
Cronjob, der das Skript aufruft (kcron unter SuSE, Pfad zum Skript...)
Im index.php steht nur der Aktualisierungscode.
Was mich noch stört: Minimales Zeitinterval für Cronjobs = 5 Minuten

So mal sehen ob ich da noch eine andere Lösung finde

MfG
Björn