2011-04-11 3 views

답변

0

대신 $ _SESSION을 (를) 사용할 수 있습니까?

$_SESSION['var'] = 'foo'; 
//redirect 
+0

글쎄, 나는 그것에 대해 생각했다. 하지만 기본적으로 오류가 발생하면 등록 단계 2로 되돌려 보내지 만 2 단계 초반에 1 단계의 POST 단추가 – Rob

+0

@Rob으로 설정되어 있는지 확인합니다. $ _POST를 사용하려고하는 것 같습니다. 뭔가를 위해 의도되지 않았습니다. 세션 상태를 추적하려면 대신 $ _SESSION을 사용합니다. 어쨌든이 작업을 할 수는 있지만 일반적으로 $ _POST 변수가 여러 요청을 묶어 두지는 않습니다. – TaylorOtwell

0

action = ""html 태그에는 리디렉션 할 주소를 넣으십시오. 그러면 해당 페이지에 값이 게시됩니다.

0

리디렉션이 수행되면 GET 요청이 수행됩니다. POST 리디렉션을 만들 수 있다고 생각하지 않습니다.

슈퍼 글로벌 변수 $_REQUEST을 사용하여 POST 및 GET 요청을 확인하도록 코드를 수정할 수 있습니다. 그렇게하면 리디렉션에 필요한 매개 변수를 GET 매개 변수로 전달할 수 있으며 PHP 스크립트에서 가져올 수 있습니다.

그러나 다단계 양식으로 작업하는 경우 세션 변수를 사용하는 것이 좋습니다. 이렇게하면 세션의 각 단계에서 사용자가 입력 한 정보를 저장할 수 있으므로 이전 단계로 돌아 가면 쉽게 다시로드 할 수 있습니다.

1

동시에 POST 할 수없고 리다이렉트 할 수 없습니다. 리디렉션이란 여러 개의 HTTP 헤더를 설정하는 것을 의미합니다. 그러나 사용자의 필요에 따라 여러 가지 솔루션이 있습니다.

하나는 $ _SESSION에 데이터를 저장하고 위에서 응답 한대로 검색하는 것입니다.

또 다른 방법은 별도의 파일에 PHP 형식을 넣고 게시 된 데이터에 오류가있는 경우이를 포함 시키므로 사용자를 리디렉션 할 필요없이 현재 POST의 모든 변수를 갖게됩니다 (그리고 양식에 오류 메시지 설정).

AJAX를 사용하여 게시물을 작성한 다음 결과를 얻으려고 생각하면 javascript를 사용하여 리디렉션을 수행 할 수 있습니다.

또는 전달할 변수/값이 많지 않은 경우 리디렉션을 수행 할 때 GET을 사용할 수 있습니다.

다른 대안도있을 것입니다.

관련 문제