8.12.1 Problem
You want to force output to be sent to the browser. For
example, before doing a slow database query, you want to give the user a status
update.
8.12.2 Solution
print 'Finding identical snowflakes...';
flush();
$sth = $dbh->query(
'SELECT shape,COUNT(*) AS c FROM snowflakes GROUP BY shape HAVING c > 1');
8.12.3 Discussion
The flush( ) function sends all output that PHP has
internally buffered to the web server, but the web server may have internal
buffering of its own that delays when the data reaches the browser.
Additionally, some browsers don't display data immediately upon receiving it,
and some versions of Internet Explorer don't display a page until they've
received at least 256 bytes. To force IE to display content, print blank spaces
at the beginning of the page:
print str_repeat(' ',300);
print 'Finding identical snowflakes...';
flush();
$sth = $dbh->query(
'SELECT shape,COUNT(*) AS c FROM snowflakes GROUP BY shape HAVING c > 1');