Humm. As far as I'm aware, and indeed in a quick test I just threw together, a dollar in a variable has no bearing on echo.
It's also definitely nothing such as a numeric typecasting, as they use "from-the-first" characters - in this case a $, which results in it being cast to 0.
I'm going to suggest that either: - You are mistaken about what record is actually being pulled from the database - You are re-using a variable already set to "99" - and have a spelling error in the second assignment - You have some debug code that is overwriting your database value within the PHP
tl;dr: there's nothing really wrong with the code sample provided - the problem lies higher up in the script.