Hola @KevinLeyes,
habría que hacer un perfilado del código para determinarlo, pero así, a ojo, el problema es probable que esté en:
<?php $meta = unserialize(file_get_contents('http://www.geoplugin.net/php.gp?ip='.$logacc['IP'])); ?>
ya que ahí estás llamando a un servicio externo, y puede ser que este no responda o tarde en responder, con lo que pasados 30 segundos, Apache abortará la ejecución del script, y por eso se ve incompleto.
Que www.geoplugin.net no responda puede ser tanto un problema del ancho de banda del servidor como de limitaciones de peticiones del propio servicio.
Lo que tendrías que hacer para solucionarlo, si es este el problema (podés verificarlo viendo como carga sin ejecutar esa línea) es implementar una caché que haga la petición y la guarde localmente. Luego si la respuesta está cacheada, usa la caché, y si no lo está, la vuelve a pedir.
La caché podría además tener un tiempo de expiración, para que cada tantos días los datos se refresquen en caso de haber cambiado.
Saludos!