If your iPhone won’t vibrate even if you are sure you have set it to do that, there is one trick that has worked for others that you can try. Start by downloading an app such as iBrate, which turns your iPhone into a massager. When the app is installed, turn it on and then knock on the back of your iPhone toward the bottom right. Knock sharply, but not too hard. If this doesn’t fix it, then it could be that it needs repaired. This should be free if your iPhone is still under warranty.