Por Dios! ni bien posteo en foros del web siempre me inspira y puedo encontrar la solución, es decir, que hasta cuando no se reciben respuestas de sus magníficos usuarios acerca de un tema en concreto, foros del web funciona de cabala para resolver nuestros problemas ja. Resulta ser que estaba llamando sucesivas veces a la misma página sin haber terminado el proceso actual. Por lo tanto, agregando una variable que controle cuando se está llevando a cabo una petición y de acuerdo a esto enviar una nueva o no, pude solucionar el problema. La solución está en la variable async_complete. Les dejo el código:
Código PHP:
var obj;
var i;
var secs = 0;
var async_complete = true;
function send()
{
form = document.getElementById('uploader');
form.target = "iframe";
obj = new HttpRequest();
obj.setResponseType(3);
obj.oncomplete = function(){
async_complete = true;
json = obj.getResponse();
if ( json )
{
switch ( json.stat )
{
case 'copying':
document.getElementById('progress').innerHTML = json.value + ' Transfer Rate: ' + json.transfer_rate;
break;
case 'finished':
clearInterval(i);
document.getElementById('progress').innerHTML = 'Finished';
break;
case 'cancel':
document.getElementById('progress').innerHTML = 'Aborted by user';
break;
default:
document.getElementById('progress').innerHTML = 'Loading...';
}
}
}
document.getElementById('progress').innerHTML = 'loading...';
form.submit();
i = setInterval(update,1000);
}
function update()
{
secs += 1;
if ( async_complete )
{
async_complete = false;
obj.loadAsync('progress.php');
}
}