Woups, erreur de ma part j'ai pas vérifié la requête, désolé. ^^';
Le voilà ton soucis; ce n'est pas $infos qui t'intéresse je crois mais plutôt $result;
$requete = mysql_query('SELECT MAX(message.timestamp) AS `timestampDernierMessage` FROM message WHERE idPseudo=' . intval($_GET['id']));
Ca c'est la requête pour $infos, or ça ne sélectionne aucun membre, erreur donc logique.
Par contre plus haut tu as l requête pour $donnes qui elle est;
$reponse = mysql_query('SELECT * FROM membres WHERE id = ' . intval($_GET['id']));
Là on sélectionne les infos du membre (et son rang j'imagine).
Donc ce n'est pas $infos['rang'] (meal culpa) mais plutôt $result['rang'] je crois.
Essaye et si ça va toujours pas, bah reviens. 