2012-09-09 3 views
0

사용자가 첫 번째 페이지에서 세 가지 옵션 중에서 선택하고 두 번째 페이지로 이동하면 이전에 선택한 옵션에 따라 다른 정보를 표시하는 등록 웹 사이트를 만들려고합니다. 나는이 페이지로 다시 사용자를 리디렉션 수있는 방법페이지 옵션 선택

<?php 
$clicked = $_POST["Next"]; 
if(isset($_POST['Reg_type'])) 
{ 
    header('Location:Registration_2.php'); 
} 
elseif(isset($_POST['Next'])) 
{ 
    header('Location:Registration_1.php'); 
    echo "Error! You must select an option!"; 
    // display form again here 
} 
?> 

<form name="frmtype" action="Registration_2.php" method="post" > 
<input type="radio" name="Reg_type" value="1"/> Registering myself with credit card or bank account <br/> 
<input type="radio" name="Reg_type" value="2"/> Registering multiple people using credit card or bank account <br/> 
<input type="radio" name="Reg_type" value="3"/> Registering multiple people using a purchase order <br/> 
<input type="submit" name="Next" value="Submit"/> 
</form> 

그들은 단순히 옵션이 가능한 디스플레이 오류 메시지를 선택하지 않고 제출 클릭에 보낼 경우 :

Registration_1.php에

이 코드입니다 그들이 옵션을 선택한다면 2 페이지? 감사합니다.

편집 : 블록을 추가했지만 옵션을 선택했는지 여부와 상관없이 다음 페이지로 이동했습니다. header()가 다른 페이지로 이동하는 올바른 방법이 아닙니까?

+0

읽기 양식 유효성 검사 – hjpotter92

+0

에 대해 언어. – moonwave99

답변

2
if(isset($_POST['Reg_type'])) 
{ 
    // execute some code 
    // go to page 2 
} 
else 
{ 
    echo "Error! You must select an option!"; 
    // display form again here 
} 

문서 :이 ** 매우 ** 기본 PHP 물건, 그래서 대신에 여기에 내가이 책을 함께 가서 자신감을 얻기 위해 당신을 조언 조각의 몇 가지를 얻는 것입니다 $_POST variable

+0

이것은 내가 쓴 것이다 : if (isset ($ _ POST [ 'Reg_type'])) { header ('Location : Registration_2.php'); } elseif (isset ($ _ POST [ 'submitbutton']) { \t header ('Location : Registration_1.php'); echo "오류! 옵션을 선택해야합니다!"; // 여기에 양식을 다시 표시하십시오. }하지만이 방법으로도 원하는 결과를 얻지 못할 수 있습니다. 무엇이 없습니까? – Richard

+0

질문을 현재 PHP 코드로 편집하고 문제가 무엇인지 알려주십시오. – Jocelyn