Well, I see nothing obviously wrong in the code posted above, but it looks like example code instead of the Real Thing(tm).
A quick 'n dirty "hack" would be to set $message='' at the top of the loop, since it's going to be reassigned again anyway.
And, as far as the real code goes, check and make sure you haven't got a concat operator attached to that assignment anywhere...