What time and date is the sun directly overhead a given place on Earth?
Having the sun directly overhead can happen only between the Cancer and Capricorn tropics. That is, only the places between 23.5° of latitude north and 23.5° of latitude south.


On the Cancer tropic (23.5° latitude north) it will happen once every year, on the day of the northern hemisphere solstice (about June 21st).
On the Capricorn tropic (23.5° latitude south) it will happen once every year, on the day of the southern hemisphere solstice (about December 21st).
On the equator it happen twice every year. One on each equinox (about March 21st and September 21st).
For any other given place between the tropics, it will also happen twice every year. On the days when the Declination of the sun (a coordinate in the sky analogous to latitude on the Earth), matches the latitude of the place.  Various formulas to calculate the declination to various precision can be found at Wikipedia.


This figure would help to visualize the situation:


The configuration depicted, will happen on the southern hemisphere summer solstice (about December 21st): The only day of the year when the sun passes exactly overhead on the Tropic of Capricorn.

When it comes to what time of the day it will happen, it won't happen at local noon (see this question), the exact time requires a lengthy calculation (see this), but a good estimate would be:

GMT - TimeZone + Longitude/15

Where GMT is Greenwich Meridian Time (the same than Universal Time for this effects), TimeZone is the time zone you are at. For instance -7 for the Pacific Time Zone in North America. And Longitude, is the longitude of the observer (expressed as a positive value for East longitudes and a negative value for West ones). The error of this estimate can be in the order of 15-20 minutes.