in reply to blocking IPs
With the above caveats about problems with ip blocking, what you want to do is just use a real database and store a row with the ip and the vote image and check against that on new votes. You could use either Mysql (or another 'real' database) or maybe dbfile, or possibly even just use Storable and store/retrieve a hash.