This may be due to intestinal upset from a change in food, intestinal parasites such as worms, coccidia, or giardia, or he could have a bacterial infection such as campylobacter or listeria especially if he got into old people food or a dead animal.
This could also be due to a swallowed non food item, ingestion of something toxic including plants, mushrooms, chemicals etc.
So seeing the vet to find out what is going on should be a priority if he is not better by tomorrow.
An over the counter med you might try would be Pepcid or Tagamet or Zantac.
Be sure to tell the vet when you see them if you use any of these.
You can read about dose amounts (and cautions) scrolling down on the pages here
If that helps then you can see if some bland food and plain pedialyte added to the water bowl will help.
I would suggest trying boiled chicken meat or hamburger with the fat drained off, mixed with really well cooked rice in a ratio of 1/3 meat to 2/3 rice to see if that works. It's not a balanced diet but OK to use for a few meals while working on controlling digestive upset.
But if he is vomiting and having diarrhea a lot, or if you are seeing blood in either vomit or stool, then if you can see your vet with him today you should try to do so.
Dogs that are sick like this can end up dehydrated pretty quickly.
You can check for dehydration by pulling the skin gently up over his shoulders in a 'tent' and release it. If it goes right back down that is good but if some stays stuck up that's a dehydration indicator.
Hope this helps you!