실제로 그런 식으로 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']
인사를. 이 질문에 답변 해 주셔서 감사합니다. 사실, 이미 해봤지만 비밀번호와 같은 데이터를 전달해야한다면 어떻게 될까? 이건 안전하지 않아. 이 대신 XML/JSON을 사용할 수 있습니까? 나는 아직도 JSON에 대해서는 모른다.하지만 PHP로 GWT를 전달하는 데 사용될 수 있다는 것을 읽었다. 난 정확히 정확히 어떻게 해야할지 모르겠다. ( – wens
암호는 또 다른 문제이다. 그러나 RequestBuilder가 HTTP 요청을 만드는 것만으로도 "매우"이기 때문에 RequestBuilder로는 훨씬 더 안전하다고 생각하지 않는다. RequestBuilder를 사용하면 POST를 대신 사용할 수 있습니다 (여전히 읽을 수 있습니다). 자세한 내용은 내 업데이트를 참조하십시오. –
안녕하세요. 서버 측에 어떤 코드를 넣을까요? .. :( – wens