You actually have two issues:
1) creating a script that sends the email
2) scheduling this script so that it is performed at regular intervals.
How you implement #2 can affect some details in how you write this script.
Here's a basic script:
Go to layout [//specify reminderDate table]
Enter find mode //clear the pause check box
Set field [ReminderDates::ReminderDate ; "<" & Get ( CurrentDate ) ]
Set Field [ReminderDates::Status ; 0 ]
Set Error Capture [on]
Perform Find 
If [ Get ( FoundCount ) > 0 ]
Send Mail [...
Go to Record/Request/Page [next ; exit after last]
Replace Field Contents [no dialog; Reminderdates::Status ; 1 ]
- This script can be set to run each time the file is opened.
- If hosted by FileMaker Server, you may be able to use a server schedule to run this script once a day.
- A FileMaker "Robot" file can be opened ("run") from an operating system based scheduler such as windows schedule tasks and it can run this script "on file open".
- If you leave the window open 24/7 an OnTimer script can perform this script every 24 hours or some other specified interval.
As written, the script does not assume that it will be run every day (which can happen with a script set to run when it is opened.) Thus, it looks for any reminder date with today's date or earlier with a status value of 0.