Tu n'as pas pris toutes les remarques en compte
On ne met pas de quote autour des INT. Tu insères des champs vide aussi, autant pas le renseigner dans ta requête.
Ca devrait donner ca :
$sql = 'INSERT INTO messages (listes_parametres) VALUES('.$_SESSION['id'].', '.$_GET['id_destinataire'].', "'.date("Y-m-d H:i:s").'", "'.mysql_escape_string($_GET['sujet']).'", "'.mysql_escape_string($_POST['message']).'")';
Renseigne la liste des champs à la place de listes_parametres. Car ici pareil il te manque un champs que tu as pas vu. Certes c'est plus rapide de pas les spécifier, mais source d'erreur.
Tu peux toujours faire un echo de ton $sql en suivant, et tester la requête affichée dans phpmyadmin pour vérifier son bon fonctionnement.