Děkuji všem za nakopnutí k nápadu. Lze to vyřešit následujícím způsobem:
V hlavním dokumentu pouze zavolám test.php (pomocí jquery, bez obnovování):
<div id="sem"></div>
<script>
$(document).ready(function()
{
$("#obnovit").load('test.php')
});
</script>
V test.php zavolám s dvacetisekundovým zpožděním stejný skript.
Zde pro přehlednost netahá data z databáze, ale čeká na číslo 5:
<?php
$cislo = mt_rand(1, 10);
echo "$cislo";
if ($cislo != 5)
{
?>
<script>
$(document).ready(function() {
setTimeout (function() {
$("#sem").load('test.php')
}, 20000);
});
</script>
<?
}
Takže problém vyřešen: test.php získá data z databáze a v případě, že nedostane to, co je označeno jako definitivní, zavolá se test.php znovu.