I have a PHP script which regularly needs to process over 75000 records.
It takes around 30 minutes to run which is fine when it's running on my standalone LAMP box locally - I just set it running and leave it.
I would however like to be able to run it on other servers - most of which would probably timeout. I'd also like to be able to update the user during the process (showing number of records processes, time taken etc.) as at the moment I have no output until the script has finished.
It loops through the recordset of makes descisions and updates on other tables - I've tried using MySQL limit to process a batch at a time and then reload the page with the new starting record number to process the next batch but Firefox seems to see this as a perpetual loop and kills it.
Can anyone recommend any way of having a script run through a batch of MySQL records then maybe pause for 30 seconds (to be web/MySQL server friendly) before running another batch and show the current process status as it does it?
Thanks.