No era una solución, era para comprobar lo que te comentaba jeje
He estado ojeando y el problema está en la sincronía/asincronía del Ajax. Por defecto las peticiones se hacen asíncronas, por lo que se van machacando unas a otras sin esperar a que termine, de ahí que únicamente se muestre la última.
Para solucionar el problema lo que hay que hacer son peticiones síncronas, lo cual se consigue modificando la siguiente línea:
Código Javascript
:
Ver originalhttp.open("POST", url, false);
(true por false)
Haciendo éste cambio podemos omitir la parte de comprobación de respuesta:
Código Javascript
:
Ver originalhttp.onreadystatechange = function() {//Call a function when the state changes.
if(http.readyState == 4 && http.status == 200) {
Ésto es debido a que el JS no se continuará ejecutando hasta que no haya respuesta de servidor, asi que evidentemente no necesitarías un callback a una función cuando recibas respuesta.