Joe -
An important aspect of this project is just how the users will specify what to watch out for. Is it going to be an existing product, with a product ID, that's out of stock currently? Or maybe the SKU of a product that they've seen elsewhere? To automate it, it would be far better to have a simple criterion to run a match on, like an ID.
If that's the case, you could just create another table to hold the user ID and the product ID they're looking for. Whenever a product gets added, a check is run (by product ID) against your waiting list table; you retrieve all the applicable user IDs of people waiting for that product. Then just grab the email address from the user table, and shoot off an email using PHP's built-in functionality.
-Jeremy