이 질문을하는 것이 바보 같아요.하지만 몇 시간 동안 씨름하고 있었고, 어디에서 돌아야할지 모르겠군요.PHP 포스트 스크립트에서 HTTP 포스트 필드를받지 못했습니다.
나는 PHP 스크립트에 POST 요청을하는 플래시 양식을 가지고 있으며, 그런 다음 스크립트의 출력을 표시합니다.
Referer: http://example.com/my.swf
Content-type: text/html
Content-length: 68
[email protected]
: 나는 양식을 제출하면
echo 'Mail sent to: ' . $_POST['recipientEmail'];
, 내가 POST 요청에 의해 만들어진 라인에서 방화범의 순 탭에서 볼 : 간단하게하기 위해 들어, 이것은 PHP 스크립트입니다 가정 해 봅시다 모두 표면에 좋고 좋아요. 게시물이 만들어져 스크립트에 올바른 변수를 보냈습니다. 응답이 돌아올 때, 이것은 내가 내 플래시 추적에서 볼 것입니다 : 요청이 브라우저 나갔다 후
즉Mail sent to:
는 $ _POST [ 'recipientEmail는'] 손실되었습니다.
여기 어떻게 생각하십니까? 스크립트와 swf 파일은 모두 동일한 도메인의 동일한 서버에 있습니다.
편집 : 방금 HTML 양식에서 동일한 스크립트를 치려고했는데 $ _POST 헤더를 잡습니다. 따라서 Flash에서 전송할 때만 잡기가 어렵습니다. Firebug의 게시물 탭은 플래시보다 약간 달라 보입니다.
recipientEmail [email protected]
submit Submit
각 변수는 고유 한 줄에 있습니다.
편집 :
var _gateway:String = Share.getGateway();
var request:URLRequest;
var variables:URLVariables = new URLVariables();
var loader:URLLoader = new URLLoader();
request = new URLRequest(_gateway);
request.contentType = 'text/html';
request.method = URLRequestMethod.POST;
variables.senderName = senderName.text;
variables.recipientEmail = recipientEmail.text;
variables.senderMessage = senderMessage.text;
request.data = variables;
try {
loader.load(request);
}catch (error:Error) {
Debug.trace("Unable to load requested document.");
}
프레임 워크 또는 순수 PHP를 사용하고 있습니까? 일부 프레임 워크는 $ _POST 배열을 지 웁니다. – jimyi
@jimyi, 아니요. 어떤 프레임 워크도 사용하고 있지 않습니다. – picardo
나는 HTML 폼에서 같은 스크립트를 치려고 시도했다. 기적적으로 $ _POST 헤더를 잡았다. 따라서 Flash에서 전송할 때만 잡기가 어렵습니다. 흠. – picardo