kim4815
asked on
voting script question
I am using a simple voting script for a school project which sets a cookie on each user's machine to prevent multiple votes. My problem is that I suspect some of the users are "cheating" so to speak by setting their browsers to not accept cookies. So my 2 questions are: Is there a way to see who is doing this, particularly if a less than scrupulous user logs on at a public place such as a library and votes many times (this is what I expect is happening). The other question is what can be done to stop this. I am a web develloper and not a programmer so I have only a marginal understanding of cgi.
ASKER
The system is suppose to pick the winner of various contests; and the problem I think is multiple voting by the contestants. Since people who don't attend the school are encouraged to vote, I think asking for a login and password is probably too much too ask. That being said, I would assume one vote per machine would be the simplest option. Usually the total number of votes is well under 1000. The source of my suspicion is when a sizeable block of votes come in for one particular participant all within a short period of time, like 5-10 minutes.
if all machies have fixed ip;s, then what you should do is maintain a db/list of all the ip;s that have already voted.
ip can be tracked by the environment variable like this...
$userIP = $ENV{'REMOTE_ADDR'};
$userIP = $ENV{'REMOTE_ADDR'};
ASKER
I did think about having a database to record ip's but don't most people have dynamic ips? If a person can vote; log off; then log back on with a fresh ip number, how does the database help?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
One way to prevent multiple votes is to assign every eligible voter a login and password to the voting section of your website. That way, you know exactly who voted. Granted since you aren't a programmer, this isn't an easy task, but we can start somewhere and see how we can help you out.
I rarely rely on cookies to do anything, and I can see why you think people are cheating on the vote. Some things we might need to know:
- Do you want one vote per person or one vote per machine? Is there a difference?
- About how many voters will you have?
- What kind of server side technologies do you have available to you (ASP, Perl/CGI, etc..)?