For the surveys, I notice that by default one of the selection boxes is selected. Not really a good idea as people could just click 'vote' without reading the choices. Okay, forcing them to select an option (instead of just accepting the default), won't cause them to read the options, but it should increase the probablity.
Cookies tied to a user-authenticiation system is probably a good idea, but always remember
slashdot's advice on their polls:
This whole thing is wildly inaccurate. Rounding errors, ballot stuffers, dynamic IPs, firewalls. If you're using these numbers to do anything important, you're insane.
Unless you've got a authentication scheme which will guarantee that no one can get multiple-identities, there will be the possibilities of ballot stuffers. An intranet system would probably be secure (as you'll set up the user identities on people that you can physically see - plus you can lock it down to known email addresses and IP ranges), but on the general internet it's so easy for people to have multiple browsers, IP addresses, email addresses (I've got around 6 domains with unlimited email addresses on each - practically impossible to stop me ballot stuffing if I really feel like it: a just create a new user login for any email address I think of!), etc etc. Think very carefully if you are going to use the data for any important results (see
this ZDNet story on how Microsoft 'alledgly' fixed one of the polls ZDNet was running).