Ну ставить куку на время жизни опроса, чем плохо?
Кука есть значит пользователю ничего не показываешь...
Либо надо пользователей авторизовать, чтобы они могли голосовать только если прошли авторизацию, человек проголосовал, а ты потом смотришь голосовал ли этот пользователь, если да, то опроса не видит.
Первое проще, да и в принципе имеет право на жизнь, хотя куки всегда можно обойти просто отключив их, но это уже другая история...