Clear questions and runnable code
get the best and fastest answer
Maybe I'm wrong, but I see that you are using global xmlHttpReq objects in asynchronous requests. This could lead into problems, because a second (and successive) asynchronous request (i.e. a second vote in the page) will overwrite previous ones if they are not finished and you'll never receive a response from them.
There are some ways of solving this, for example, putting multiple xmlHttpReq objects in an array.
Sorry if I misread your codecitromatik