O motivo mais comum do erro Server has gone away aparecer, é o tempo limite das consultas do MySQL. Isso pode acontecer se você estiver usando consultas MySQL pesadas ou muito longas. Para evitar esse erro, use o comando mysql_reconnect antes de cada consulta.
Caso você ainda esteja vendo esses erros, recomendamos procurar ajuda em sites como o casa do desenvolvedor, onde milhares de profissionais de desenvolvimento web compartilham seus conhecimentos!