2011-10-19 6 views
1

죄송하지만이 멍청한 질문에 대해서는 답변을 알아야합니다. 나는 약간의 튜토리얼을 읽었지만, 단지 내가 무엇을해야하는지 혼란스럽게 만들었다. 다시 미안 해요.PHP 페이지에 GWT 입력 게시

입력이있는 GWT 앱이 있습니다 (이름, 주소, 이메일). 사용자가 필요한 모든 필드를 입력하고 제출 버튼을 누르면 PHP 페이지에 GWT 앱의 입력이 표시됩니다. 어떻게 내 GWT 애플 리케이션을 PHP에 연결할 수 있습니까? 요청 빌더를 사용 중입니다. PHP를 사용하여 GWT 입력을 XML로 전달해야합니까? 도와주세요. 나는 여기서 GWT를 배우기 시작했다.

미리 감사드립니다.

답변

1

실제로 그런 식으로 RequestBuilder가 필요하지 않습니다.
PHP URL로 리디렉션하고 입력을 GET 매개 변수로 추가하는 것으로 충분합니다. 그래서 클릭 처리기에서 예를 들어, 당신은 그런 식으로 뭔가를 할 수 있습니다

$name = $_GET['name']; 
$address = $_GET['address']; 
$email = $_GET['email']; 

업데이트

:

submitButton.addClickHandler(new ClickHandler() { 
    public void onClick(ClickEvent event) { 
     String linkURL = "somePage.php?name="+name+"&address="+address+"&email="+email; 
     Window.Location.assign(linkURL); 
    } 
}); 

다음 PHP 페이지에서이 방법으로 매개 변수를 검색 할 수 있습니다

RequetBuilder를 사용하려면 다음과 같이해야합니다.

submitButton.addClickHandler(new ClickHandler() { 
    public void onClick(ClickEvent event) { 
     RequestBuilder request = new RequestBuilder(POST,PHP_URL); 
     JSONObject jsonValue = new JSONObject(); 
     jsonValue.put("name", new JSONString(name)); 
     jsonValue.put("address", new JSONString(address)); 
     jsonValue.put("email", new JSONString(email)); 
     request.setHeader("Content-Type", "application/json"); 
     request.sendRequest(jsonValue.toString(),new RequestCallback() { 
      @Override 
      public void onResponseReceived(Request request, Response response) { 
       if (200 == response.getStatusCode()) { 
        //retrieve a uniqueid or so and redirect to the PHP page which displays the infos 
       } else { 
        // displayError("Couldn't retrieve 

       } 
      } 

      @Override 
      public void onError(Request request, Throwable exception) { 
       //displayError("Couldn't retrieve JSON"); 
      } 
     }); 

    } 
}); 
서버에서

당신은 단지 값을 얻기 위해 글로벌 $ _POST 변수에 액세스 :

$name = @_POST['name'] 
+0

인사를. 이 질문에 답변 해 주셔서 감사합니다. 사실, 이미 해봤지만 비밀번호와 같은 데이터를 전달해야한다면 어떻게 될까? 이건 안전하지 않아. 이 대신 XML/JSON을 사용할 수 있습니까? 나는 아직도 JSON에 대해서는 모른다.하지만 PHP로 GWT를 전달하는 데 사용될 수 있다는 것을 읽었다. 난 정확히 정확히 어떻게 해야할지 모르겠다. ( – wens

+0

암호는 또 다른 문제이다. 그러나 RequestBuilder가 HTTP 요청을 만드는 것만으로도 "매우"이기 때문에 RequestBuilder로는 훨씬 더 안전하다고 생각하지 않는다. RequestBuilder를 사용하면 POST를 대신 사용할 수 있습니다 (여전히 읽을 수 있습니다). 자세한 내용은 내 업데이트를 참조하십시오. –

+0

안녕하세요. 서버 측에 어떤 코드를 넣을까요? .. :( – wens

관련 문제