Ik heb een probleem met onderstaand script voor een chatbox (server-side
push):
<?php
$dbhost = xxxxx; $dbuser = xxxxx; $dbpassword = xxxxx; $dbdatabase = xxxxx;
mysql_connect("$dbhost", "$dbuser", "$dbpassword");
mysql_select_db("$dbdatabase");
while (true)
{
$query = mysql_query("SELECT * FROM chat WHERE cid > '$laatsteregel' ORDER
BY cid ASC"); //ophalen nieuwe regels
while ($res = mysql_fetch_object($query))
{
//echo nieuwe regels
}
$laatsteregel = $res->cid;
flush();
sleep(1);
}
?>
Het probleem is dat elke keer als deze pagina opgevraagd wordt, een nieuwe
mysql-process wordt aangemaakt, en die wordt nooit beëindigd, omdat het
einde van het script nooit wordt bereikt.
Sinds een serverupgrade (upgrade redhat + apache + php van 4.1.2 naar 4.2.2)
krijgen we nu steeds bij het connecten met sql 'too many connections'. Voor
de serverupgrade hadden we daar nooit last van.
Is er een manier om te zorgen dat dit script ophoudt met draaien, als de
gebruiker de pagina verlaat?
Of is dit probleem op een andere manier op te lossen, bijvoorbeeld door het
script anders op te bouwen?

Likes:
![[PHP / MYSQL] Sql-processen worden niet beeindigd](https://www.webhostingtalk.nl/images/WHT_rd/misc/dT.png)
Quote
.