In Reply To:
Perhaps delegating the expiring of campaigns and ads to a cron job or as a daemon running in the background would solve many of the problems.
I would recommend adding a field called
Active (Like what Monster.com does with its job and resume postings), then it would allow advertisers to expire or re-active advertisement campaigns. I am doing this with upgrading my Resume Postings (with the current version using DBMAN, I have the employers choose a number of days to run the ad and with resumes the default deletion period is 120 days, and then I run a script via Cron that checks the records by date added and remove date) feature I am working on. In the new upgraded feature, prospective employees and employers can activate or de-activate (expire) their resumes. I have learned a lot from my users who have complained that when their jobs/resumes are deleted, they have to re-enter their data. The employers re-open positions all the time and prospective employees like the flexibility of activating/de-activating since they do not have to spend more time re-enter data.
The main reason that I recommend an
Active (ENUM ('Y','N')) field is that outright automatically deleting advertisements will raise frustrations of advertisers who would have to re-enter their information to re-active advertisment campaigns.
Another suggestion is tying the advertisement system with the Links table. I have done this for my banner exchange (although I am still working on the view bugs) that only Link Owners can add one banner per link they add and they cannot add a banner without first selecting a link they've added. When they select a link, then they are redirected to the Banner form where some of the fields, including
Title are already filled in with the value from the associated record in the
Links table. I have added a field for the
LinkID that pulls the URL from the
Links table, rather than re-printing the URL in the
Banner table.
Regards,
Eliot Lee