2012-12-05 3 views
-1

내가 사용하고있는 웹 응용 프로그램을 가지고 있다고 생각했지만 간단한 Ajax 기능입니다. 이 응용 프로그램은 사무실에서 5 대의 컴퓨터 중 4 대의 컴퓨터에서 훌륭하게 작동하지만 한 대의 컴퓨터는 200 대의 상태에 도달하는 데 문제가 있습니다. 또한 브라우저 관련 문제도 아닙니다. 그는 IE, Chrome, Firefox, & Safari 및 4 가지 브라우저에서 모두 동일한 문제로 앱을 사용해 보았습니다.특정 컴퓨터에서 Ajax 상태가 도달하지 않음

이것은 제품이 완전히 생산되기 전에 우리가 실제로 알아야 할 것이고 수정해야 할 것입니다. 그 후에 우리는 고객 컴퓨터를 수정하거나 고객에게 자신의 컴퓨터가 잘못되었다고 설명하려고하지 않을 수 있습니다.

어떤 아이디어가 있습니까?

주 :

  1. Ajax 기능은 PHP 스크립트를 조회하고, 데이터베이스 같은 서버에 있습니다.
  2. 그의 컴퓨터가 파빌리온 DV7 컴퓨터에

코드 Windows 7을 실행 :

// Pull the information from the database 
get_variables = 'action=grabUnitInformation'+ 
'&identifier='+identifier; 

var xmlhttp; 
if (window.XMLHttpRequest){ 
// code for IE7+, Firefox, Chrome, Opera, Safari 
xmlhttp=new XMLHttpRequest(); 
}else{ 
// code for IE6, IE5 
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 

xmlhttp.onreadystatechange=function(){ 
if (xmlhttp.readyState==4 && xmlhttp.status==200){ 
    var receiver = eval('(' + xmlhttp.responseText + ')'); 

    // Process JSON 
    alert("Got the info"); 
}else{ 
    alert("Ready state: "+xmlhttp.readyState); 
    alert("Status: "+xmlhttp.status); 
} 
} 

xmlhttp.open("GET", "http://www.mysite.com/search.php?"+get_variables, true); 
xmlhttp.send(); 
+0

JSON 데이터를받을 경우'eval'을 사용하지 말고 – Bergi

+3

"* 200 상태에 도달하는 데 문제가 있음"- 대신 어떻게됩니까? 더 말해. 어떤 상태가 되었습니까? 콘솔에서 어떤 오류를 볼 수 있습니까? 네트워크 속성을 사용하십시오. – Bergi

+2

문제가있는 컴퓨터가 네트워크에 어떻게 연결되어 있습니까? 그 밖의 다른 점은 무엇입니까? 다른 인트라넷 사이트에 연결할 수 있습니까? 콘솔에 오류가보고 되었습니까? 네트워크 트래픽을 직접 확인 했습니까? HTTP 요청으로 서버에 알려줄 수 있습니까? – Pointy

답변

0

확인을, 나는 그것을 작동하게하는 방법을 발견했다.

Ajax 스크립트가있는 페이지, 쿼리 된 PHP 스크립트 및 데이터베이스는 모두 동일한 서버에 있습니다. 그래서 .......... 대신 절대 URL의

는 :

xmlhttp.open("GET", "search.php?"+get_variables, true); 

을 그리고 지금은 좋은 :

xmlhttp.open("GET", "http://www.mysite.com/search.php?"+get_variables, true); 

나는 상대 URL로 변경되었습니다. 가장 좋은 방법은 아닐지 모르지만 아직 다른 답변이나 도움을 찾지 못했습니다.

관련 문제