2013-03-24 4 views
2

저는 현재 확실한 가이드 자바 스크립트 좋은 책 읽고 있어요 - 여기에 설명 된대로 6 판 데이비드 플래너 건에 의해 책에 그가 servor에서 일부 데이터를 수신하는 함수를 보여줍니다 :PHP GET 서버 응답

(이론적으로) 대출을 관심 지역 대출에 대한 링크의 목록을 반환 수있는 서버 측 스크립트로 사용자의 입력을 전달합니다. 이 예는 실제로 이러한 대출-findingservice의 작업 구현을 포함하지 않습니다. 서비스가 존재하지만,이 기능이 함께 작동합니다.

function getLenders(amount, apr, years, zipcode) { 
    if (!window.XMLHttpRequest) return; 

    var ad = document.getElementById("lenders"); 
    if (!ad) return; 

    var url = "getLenders.php" + 
     "?amt=" + encodeURIComponent(amount) + 
     "&apr=" + encodeURIComponent(apr) + 
     "&yrs=" + encodeURIComponent(years) + 
     "&zip=" + encodeURIComponent(zipcode); 

    var req = new XMLHttpRequest(); 
    req.open("GET", url); 
    req.send(null); 

    req.onreadystatechange = function() { 
     if (req.readyState == 4 && req.status == 200) { 
      var response = req.responseText; 
      var lenders = JSON.parse(response); 

      var list = ""; 
      for(var i = 0; i < lenders.length; i++) { 
       list += "<li><a href='" + lenders[i].url + "'>" + 
        lenders[i].name + "</a>"; 
      } 
      ad.innerHTML = "<ul>" + list + "</ul>"; 
     } 
    } 
} 

그는이 작업을 수행 할 수있는 PHP 스크립트를 제공하지 않습니다. 나는이 응답을 처리하기 위해 getLanders.php 스크립트를 작성하기 위해 노력하고있어 어떤 조언을 부탁드립니다.

<?php 
    if($_GET["amount"] || $_GET["apr"] || $_GET["years"] || $_GET["zipcode"]) 
    { 
     echo // What format should I make the list of lenders so that is it correctly 
      // broken up and handled by the JSON.parse() function? 
    } 
?> 

그래서, 내 질문에 데이비드 Flanagens 기능은 위 올바르게 요청을 처리 할 수 ​​있도록 클라이언트에 정보 목록을 반향하는 올바른 방법이 무엇인지 것 : 여기

는 내가 지금까지 무엇을 가지고 ? 어떤 조언에 대한

감사합니다.

답변

2

같습니다. 당신은 json_encode()와 JSON 데이터를 에코, 그래서 뭔가 비슷한을 할 수 있습니다

$data = array(
    array('name' => 'foo', 'url' => 'url'), 
    array('name' => 'bar', 'url' => 'url2'), 
); 
echo json_encode($data);