The easiest way is to allow the user to select a Month, Day, Year, Hour, Minute in drop-downs. [man]strtotime/man will only work with certain variations of dates and times. So if a user is different and writes it that is not a common format (like MM/DD/YYYY or DD.MM.YY) then strtotime() might not come back with a valid timestamp.
The best way to do it is to provide drop-downs for each part of the date and time. Then use [man]mktime/man to create a unix-timestamp of that specific time.
If you need to deal with timezones, you should ask them to either give you their timezone calculation (-5 for EST) or tell them to put the time in according to GMT (which is +/- 0 hours) and then you can later make the calculations based upon DST and timezone how many hours to shave off or add to that date.