в БД сделать колонку - проголосовал или нет(0/1), при каждом голосовании проверять (идентификация по сессии или по кукам)
Если пользователь находится в системе - контролировать можно. Если же нет - одного AdMunchar'a хватит чтоб проголосовать сколько захочешь.
без регистрации голосование можно организовать по мыльникам. 1. Пользователь ставит оценку и вводит email. 2. На почту высылается ссылка для подтверждения оценки. так можно контролировать хотя бы уникальность email'ов без регистрации.