lus met pauze

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Harald

Harald

30/06/2004 05:27:00
Quote Anchor link
Hallo allemaal,

Ik heb een logbestand waarin geschreven wordt op het moment dat er iemand in mijn chatbox komt. Is er niemand, dan is het logbestand leeg.
Nu wil ik dat als er iemand de chatbox inkomt ik een waarschuwingssignaal krijg in de vorm van geluid.
Hier ben ik in zoverre in geslaagd dat er op zich wel een geslaagde beoordeling en afhandeling plaatsvindt, echter maar 1 keer.
Daarentegen wil ik voortdurend op de hoogte gehouden worden. Ik heb dit geprobeerd te bereiken met een oneindige while-lus, echter werkt dit niet. Mijn computer moet dan waarschijnlijk zo hard werken dat deze niet eens tijd heeft enige output te geven (mijn systeem wordt uiterst traag), behalve dan na 30 seconden, wanneer mijn systeem zelf met een error-bericht aan de noodrem trekt.
Dus dacht ik vervolgens aan een kleine vertraging in te bouwen voor elke herhaling van de lus.
Ik weet dat ik dit (lang geleden) eerder heb gedaan met JavaScript, maar heb geen idee meer hoe dat ging. Bovendien is JavaScript natuurlijk niet het zelfde als PHP.

Kan iemand mij aan de hand van onderstaand script uitleggen hoe ik dit het beste kan doen?

(Het begin en eind van waar de lus moet plaatsvinden heb ik aangegeven met commentaarregels.
Met o.a. de toevoeging en bewerking van [$geheugen] probeer ik te bereiken dat ik alleen een geluidsignaal te horen krijg als er iets aan het logbestand wordt toegevoegd en niet al toegevoegd is.)


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php

$geheugen
=1;

/* begin herhalingslus */

$fopen = fopen("data/usr","r");

$data = fgets($fopen, 45);
$len = strlen($data);

if (($len > 1) && ($len > $geheugen))
{

echo ("<script>document.write('<object type=\"application/x-shockwave-flash\" data=\"msg.swf\" width=\"1\" height=\"1\"><param name=\"movie\" value=\"msg.swf\"></object>');</script>");
}


fclose ($fopen);
$len = $geheugen;

/* einde herhalingslus. Vanaf dit punt wil ik een vertraging van enkele seconden inbouwen voordat er terug wordt gekeerd naar het begin van de herhalingslus */

?>
Gewijzigd op 30/06/2004 09:05:00 door Harald
 
Er zijn nog geen reacties op dit bericht.



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.