procurando por php "argumento fornecido não é um recurso de resultado mysql válido" revela que para obter o erro real, você precisaria chamar mysql_error, e o erro que você obtém é porque o resultado da consulta é FALSE - esse valor não é um recurso de resultado mysql válido.
ou seja, em suma, você tem algo como:
$res = FALSE; # should contain the mysql result but does not, due to error.
$cfg = htmlspecialchars(mysql_result($res,0)); # the attempt to call mysql_result on invalid argument errors out.
Então você gostaria de usar algo assim:
$query = "SELECT * FROM cats WHERE id=$id";
$qr1 = mysql_query ($query)
or die ("Query failed: " . mysql_error() . " Actual query: " . $query);
Você pode querer tentar e ver o que diz a mensagem de erro subjacente.
Dado que o erro é "O servidor MySQL desapareceu", pode haver várias razões para isso - este artigo seria um bom começo para investigar. Pesquisando sugere também alguns bugs relacionados ao php e específicos da pilha, então parece que você pode precisar depurá-lo com mais atenção.
Talvez tente duplicar a configuração em outra caixa e comece a experimentar as versões/configurações e veja se algum dos cenários já relatados corresponde ao seu caso. Infelizmente, parece que não há uma resposta simples para isso.