El tema concreto de que tu script de proceso supere más del asignado por defecto a un script (30 segundos) puedes controlarlo con la función:
set_time_limit()
www.php.net/set_time_limit
(si no usas SAFE MODE a ON (modo seguro) .. en ese caso no podrás usarla y no tendrás opción a cambiarlo si usas un servicio de hosting salvo que tu proveedor lo haga en la configuración de PHP.ini).
Un saludo,