I am having an issue with AJAX requests on mobile browsers (and iPads, etc) but it works fine on desktop computers. I am at a complete loss to work out what's wrong here.
var xmlhttp;
if(window.XMLHttpRequest){
xmlhttp = new XMLHttpRequest();
}else{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function(){
if (xmlhttp.readyState == XMLHttpRequest.DONE ){
if(xmlhttp.status == 200){
console.log(xmlhttp.responseText);
}else{
alert("STATUS "+xmlhttp.status);
}
}
}
xmlhttp.open("GET","http://www.mywebsite.co.uk/assets/php/upvote.php?id="+id,true);
xmlhttp.send();
I've also tried:
xmlhttp.open("GET","/assets/php/upvote.php?id="+id,true);
and xmlhttp.open("GET","../php/upvote.php?id="+id,true);
All three of which work on a desktop computer (console logs a success message) but on mobile devices it alerts "STATUS 0".
I can't work out why this works fine on desktops but xmlhttp.status
is 0
on mobiles.