2014-03-12 1 views
0

코드/app/repository가 Zend Server에 있습니다. 그것을 업데이트 한 다음 git을 사용하여 github에 푸시 한 다음 phonegap 빌드를 사용하여 앱을 빌드하십시오. 젠드 서버를 가리키는 브라우저에서 코드를 테스트 할 때 제대로 작동하지만 결과는 "12345"입니다. 나는 새 코드를 추진 한 후, 응용 프로그램을 구축 내 넥서스 7을 업데이트하고 난의 미친 결과를 얻을 응용 프로그램을 실행합니다

"12345","4746904837" =>"99999","047469048372" =>"88888");foreach ($data as $key => $value){if($key===$qs){$returnData = $value;}}echo $returnData;?> 

가 왜 일치 값 뒤에 나에게 스크립트의 모든을주고 있습니까?

$ 아약스 호출

$.ajax({ 
      url: "php/test.php", 
      data: "qs=9114901075742714812669", 
      datatype: "text" 
      }) 
      .done(function(returnData) { 
       console.log(returnData); 
       $("#info").append(returnData); 
     }); 

서버가 PHP 코드를 실행하지만, PHP 파일의 텍스트를 반환하지 않습니다처럼

<?php 
$qs = $_GET['qs']; 
$data = array(
    "9114901075742714812669" =>"12345",        
    "4746904837" =>"99999", 
    "047469048372" =>"88888"  
    ); 
foreach ($data as $key => $value){ 
    if($key===$qs){ 
     $returnData = $value; 
    } 
} 
echo $returnData; 
?> 

답변

0

감사합니다. 문제는 동시에 많은 것들을 배우려고하는 것과 관련된 newb 설득의 문제였습니다. 아약스 호출 내 github 저장소에 PHP 스크립트를 가리키는 ... 그래서 결코 작동하지 않을 것이다. 내가 고쳐서 지금 서버를 가리킨다.

나는 그것을 고치면서 매우 중요한 한 가지 교훈을 배웠다.

PhoneGap을 사용하고 ajax 요청을 할 때 url에 http : //를 포함 시키면 file : //php/test.php를 호출하려고합니다.

답장을 보내 주셔서 감사합니다.

1

는 소리 PHP. 당신이

$("#info").text(returnData);

$("#info").append(returnData);

를 교체하는 경우 당신은 당신의 PHP 스크립트의 모든 텍스트가 반환되는 것을 볼 것입니다.

2

AJAX 호출은 다른 것과 마찬가지로 HTTP 요청입니다. JS가 호출을 발행하거나 브라우저의 주소 표시 줄에 url을 입력하는 경우 웹 서버와 실제적인 차이가 없습니다. 출력 대신 코드를 가져 오는 경우 서버에 문제가 있습니다.

대부분의 경우 브라우저뿐만 아니라 다시 코드를지고 있지만, <?가 알 수없는 HTML 태그로 해석 될 일으키는 :

<?php 
^--- start of "html" 
    "9114901075742714812669" =>"12345",        
           ^-- end of "html" tag 

다시 브라우저에 주소를 히트하고 "소스보기를 할 "- PHP 소스 코드를 모두 볼 수 있습니다.

관련 문제