I told my guest to foot the bill for the dinner, even though he just had water.
That doesn't seem right. Why would he pay for everyone's food?
I wanted to surprise him.
If your dinner guest only had water then it's not appropriate to expect him to pay for your meal. Dining out can be expensive and opting to have water can be a cost-cutting measure, so surprising someone with a bill they weren't expecting is unfair and they aren't likely to eat out with you again. Pay for your own meal when you go out to eat.
I can afford it and I don't need the guest to pay for the meals for my entire family. It was just a joke.
Think of how your friend felt when you did this. I think you should think of surprises that are more enjoyable for everyone.