2016-09-30 4 views
-1

양식에서 웹 사이트 페이지로 변수를 전달하려고합니다. https://www.jotform.com/help/213-Send-POST-Data-From-JotForm-Using-PHP-in-Custom-Thank-You-PagePHP 사이에 변수 전달

을 여기 내 redirect.php 페이지에 코드입니다 :

<?php 
    $answers = $_POST; 
     $url1 = "http://www.example.com/results"; 

     $var1 = "?user_email =".urlencode($answers[user_email]); 
     $var2 = "&input_63 =".urlencode($answers[input_63]); 
     $var3 = "&input_64 =".urlencode($answers[input_64]); 
     $var4 = "&input_65 =".urlencode($answers[input_65]); 
     $var5 = "&input_66 =".urlencode($answers[input_66]); 
     $var6 = "&input_67 =".urlencode($answers[input_67]); 
     $var7 = "&input_68 =".urlencode($answers[input_68]); 
     $var8 = "&input_69 =".urlencode($answers[input_69]); 
     $var9 = "&input_70 =".urlencode($answers[input_71]); 
     $var10 = "&input_71 =".urlencode($answers[input_71]); 
     $var11 = "&input_55 =".urlencode($answers[input_55]); 
     $var12 = "&input_56 =".urlencode($answers[input_56]); 
     $var13 = "&input_57 =".urlencode($answers[input_57]); 
     $url2=$url1.$var1.$var2.$var3.$var4.$var5.$var6.$var7.$var8.$var9.$var10.$var11.$var12.$var13; 
     header("location:$url2"); 
    ?> 

변수는 ''와 같은 페이지에 표시는 여기에 내가 다음하고있는 가이드입니다.

실마리가 없으며 도움을 주시면 대단히 감사하겠습니다.

+2

같은 다음 튜토리얼은 쓰레기, 그것에서 벗어날 수 있습니다. – AbraCadaver

+0

@AbraCadaver 그들이 갇혀서 다른 관련/재 게시에서 제외하지 않은 사람 http://stackoverflow.com/q/39772219/ –

+0

[새 웹 페이지 + 사용으로 PHP 변수 리디렉션] (http : //stackoverflow.com/questions/39772219/redirecting-php-variables-to-new-webpage-use) –

답변

1

입력 이름을 배열로 변경할 수 있으면 훨씬 간단합니다. 그렇지 않으면 여러 가지 방법으로 데이터를 전달할 수 있습니다. 다음 페이지에 다음

session_start(); 
$_SESSION['answers'] = $_POST; 
header("location: $url1"); 

: 세션을 사용하여

session_start(); 
$answers = $_SESSION['answers']; 
echo $answers['user_email']; 

나는 그것을 할 것입니다,하지만 당신은 URL 방식을 고집한다면,이 훨씬 더 쉽다 :

$query = http_build_query($_POST); 
header("location: $url1?$query"); 

http_build_query()은 문자열을 URL 인코딩하고 빌드합니다. PHP에서 PHP 페이지에 양식에서 변수를 전달

+0

나는 당신의 대답이 그들이하려는 것을 해결할 것이라고 확신합니다. 다른 비슷한 게시물을 참조하십시오 http://stackoverflow.com/q/39772219/ OP는 다음과 같이 설명합니다 : * "현재 변수를' '''"*로 표시 중입니다. 나는 그 질문에 대한 경우도되지 않을지 궁금하네요, "어떻게"그들이 다른 질문 아래에 코멘트에 명시된 바와 같이, 나는이 파일을 사용하고 있습니다. [이 코멘트] (http://stackoverflow.com/questions/39772219/리디렉션 - php-variables-new-webpage-use # comment66839030_39772219). –

0

<form method="POST" action="page_to_send_data_to.php"> 
    <input type="" name="something" value=""></input> 
    <input type="" name="somethingelse" value=""></input> 
    <input type="submit"></input> 
</form> 

그런 다음 페이지에 당신이 당신의 URL이

<?php 
if(!isset($_POST['something']) { 
    $var1 = $_POST['something']; 
    $var2 = $_POST['something']; 
} 
echo $var1.' '.$var2; 
?> 
+0

POST로 무언가를 제출하고 사용자 정의 URL 문자열을 작성할 필요가 없기 때문에 대답으로 제안했습니다. POST 대신 GET을 사용하고 리디렉션을 생략 할 수도 있습니다. 또한 나는 그 목적이 세션에 데이터를 저장하는 것을 실제로 보지 못한다. 또한 데이터에서 배열을 작성하는 데 어떤 논리도 보이지 않습니다. 폼을 보지 않고 무엇을하고 있는지 추측하는 것은 약간의 추측 게임이지만, 기본 폼이라면이 솔루션을 적극 권장합니다. – Bruce

0

제출

먼저 양식 오히려 간단하다 공백으로 인해 손상되었을 가능성이 있습니다. 공백으로 끝나기 때문에 input_63을 설정하지 않으면 input_63_을 설정합니다 (밑줄을 사용하면 공백이 u로 변환됩니다). php의 구문 분석 논리에 의해 nderscore), 나는 당신이 다음 스크립트에서 찾고있는 것이 아닙니다. 그리고 수동으로 쿼리를 만드는 것을 중단하십시오. 대다수의 경우, 대신 http_build_query를 사용해야합니다. 즉, 튜토리얼의 경우

$url2=$url1.'?'.http_build_query(array('input63'=>$answers[input_63],'input_64'=>$answers[input_64]))