How to fix the vibrate/silent mode button on my iphone?

It used to work fine but now when I turn it on silent/vibrate, the slightest movement will make it go back to normal sound mode even though the button itself says it's still on silent mode. It's annoying when it's in my pocket and I'm walking and all of a sudden it'll start vibrating madly to indicate hyper switching from silent to not. Not to mention the fact that it's already rung in class while supposedly on "silent mode"…

BQ: I'm displeased with the iphone. Are droids any better?

Go to your setting then go to sounds then slide it to off.