Re: Refreshing

From: Date: Mon, 30 Jun 2003 18:09:41 +0000
Subject: Re: Refreshing
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-153450@lists.php.net to get a copy of this message
> [snip] > I have a chat script. I want it to refresh the chat > display area > whenever there is a new message posted, but not > every 10 seconds or so. > How could I get the script to refresh only when > there is a new entry > into the database table? > [/snip] I have implemented something along these lines for an online chess game (so the board would only refresh when the other player moves). It did require a loop, as suggested. I used a hidden IFRAME to check the data. Basically, I would refresh the page referred to by the IFRAME every 10 seconds or so, and this page contained JavaScript that invoked a function on the containing page. The JavaScript function on the containing page would then refresh the page when the parameter passed to it indicated that the other player had moved. I did implement the site using PHP, but this really isn't a PHP specific approach. I imagine you would do something very similar for chat (in fact, I had been considering implementing it for the online chess site so that the users could send messages to each other during the course of the game). And there is a performance issue if you are going to support a lot of users at one time; however, at least it is not as bad as refreshing the entire page every 10 seconds (this would be particularly disastrous for my chess board, which contained many images). There are a number of references that talk about this trick if you search on "iframe rpc javascript" in google: http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=iframe+rpc+javascript You will still get the clicking, tho. But users' can disable it if it annoys them -- sometimes it is nice to know that something is going on. Hope this helps. Jeremy

« previous php.general (#153450) next »