The problem is that you're putting the information in every time the code loops through the while statement but you're never changing the hash key. If you don't want to do that, you're going to have to put some kind of conditional check in there to see if you want the information to be there or not.
The way your code is written, no matter what the key is, since it never changes, you're always going to get the value in every entry.
Hope that helps!
There is no emoticon for what I'm feeling now.