2013-10-17 6 views
0

로 리디렉션 나는 다음과 같은 단계를 수행 할 필요가있는 페이지가 있습니다포스트 양식, 10 초 기다렸다가

단계 1-POST

2 단계를 통해 URL 주소, 이름, 값, 납입 및 ID를 수신 - 십초

3 단계 대기 - 포스트를 통해 수신 된 다음과 같은 정보를 (또한 우편으로) 보내기 : 포스트를 통해 수신 된 URL에 이름, 값, 납입 및 ID를

4 단계 -받은 URL로 리디렉션 게시물을 게시하고 화면에 게시물을 인쇄하십시오.

아래 코드를 사용하고 있지만 리디렉션 된 URL의 인쇄가 게시물 정보를 가져와야하므로 아무 것도 잘못되어 어떤 이유로 든 정보가 잘못 표시됩니다. 올바르게 게시되고 있습니다.

누군가 내가 잘못하고있는 것을 말해 줄 수 있습니까?

코드 :

HTML - POST로 양식 작성 :

<?php 
    $retorno = $_POST['url']; 
?> 
:

<form id="ret" name="return_url" method="post" action="<?php print_r($_POST['url']);?>"> 
<input type="hidden" name="name" value="<?php print_r($_POST['name']);?>" /> 
<input type="hidden" name="value" value="<?php print_r($_POST['value']);?>" /> 
<input type="hidden" name="num" value="<?php print_r ($_POST['num']);?>" /> 
<input type="hidden" name="ID" value="<?php print_r($_POST['ID']);?>" /> 
<input type="hidden" name="status" value="OK" /> 
</form> 

자바 스크립트 (PHP)에 사용되는 VAR $retorno에 게시 된 URL 컨텐츠를 추가하기

카운터를 시작하고 양식을 제출하고 리디렉션 (자바 스크립트 사용) :

<script language="javascript" type="text/javascript"> 
    window.onload = function() { 
    function countdown() { 
     if (typeof countdown.counter == 'undefined') { 
     countdown.counter = 10; // initial count 
     } 
     if (countdown.counter > 0) { 
     document.getElementById('count').innerHTML = countdown.counter--; 
     setTimeout(countdown, 1000); 
     } 
     else { 
     document.getElementById("ret").submit(); 
     location.href = '<?php echo $retorno?>'; 
     } 
    } 
    countdown(); 
    }; 
</script> 

답변

0

코드에 많은 문제가 있습니다. 당신이 action 속성 값으로 유효 할 것이다 방식으로 print_r 출력됩니다 위의 라인에서 $_POST['url']의 내용을 echo

<form id="ret" name="return_url" method="post" action="<?php print_r($_POST['url']);?>"> 

를 사용해야하는 위치

1. 당신은 print_r 사용합니다. 생성 된 페이지의 HTML 소스 코드를보십시오. 당신은 모든 입력 값과 같은 실수를

<form id="ret" name="return_url" method="post" action="<?php echo $_POST['url']; ?>"> 

:로

는 다시 작성해야합니다. 조치 값은 양식이 게시되는 주소 여야하므로 특히 중요합니다.

2. 당신은 양식을 제출하지만 당신은 또한 당신은 단순히 location.href 줄을 제거 형태 submit()location.href

로 리디렉션 사이에 충돌이있는 페이지

를 리디렉션합니다. HTML 양식이 올바르게 구성된 경우 JavaScript submit()은 브라우저를 action 속성에 정의 된 페이지로 보냅니다.

마지막으로 JavaScript 코딩을 쉽게하기 위해 jQuery 라이브러리를 살펴 보도록 권합니다.

관련 문제