테스트 사이트 - 개발 중인 베타 버전입니다

post로 조건에 따라 A 또는 B 페이지로 값을 유지한채 이동하려면 채택완료

뽈레야뽈레 5년 전 조회 3,407

<form name="frm"  action = "survey_2page.php"  method="post">
<input type="text" name="wr_1" value="<?=$wr_1;?>">
<input type="text" name="wr_2" value="<?=$wr_2;?>">
<input type="text" name="wr_3" value="<?=$wr_3;?>">
<input type="text" name="wr_4" value="<?=$wr_4;?>">
<input type="text" name="wr_5" value="<?=$wr_5;?>">

 

</form>

 

설문조사를 만들고 있는데요.

이런식으로 1page에서 2로, 2에서 3으로 넘어갑니다.

그냥 순서대로 넘기기만 하면 값을 그대로 잘 가져가는데 중간에 조건이 생깁니다.

 

만약 1page 에서 선택한 숫자가 7 이하이면 2page로, 

8 이상이면 3page로 넘거가게 해야하는데요.

 

form에 php if문을 줘도 적용이 안되고 (form 밖에 줘도 안되고, action 안에서도 안되더라구요.), 

goto_url이나 meta로 리다이렉팅을 주면 값이 초기화가 됩니다.

 

post로 조건에 따라 A 또는 B페이지로 이동하려면 어떻게 해야할까요..?

아니면 리다이렉팅이 되고도 값을 가져가는 방법이 따로 있을까요? 

 

 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
Policia
5년 전

이런건 스크립트로 처리해야합니다

 

form단에서 넘기기전에 값을 체크하고 이동할 페이지를 (action)선택해주는것이지요

<form name="frm" onsubmit="return survey_submit(this);" method="post">

 

function survey_submit(f){

  if(f.wr_1.value <= 7) f.action = "2page.php";

  else f.action = "3page.php";

 

  return true;

}

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

뽈레야뽈레
5년 전
값을 가지고 넘어가네요 ㅠㅠ 감사합니다.
한가지 더 질문이 있는데요..
1page에 wr_1이 select box로 있는데 이 값을 다음 페이지가 아닌
현재 페이지에 줄 수 있을까요?
1page에서 값을 선택 후 submit 버튼을 클릭해 넘겨서 2page에서 하면 작동을 하는데
1page에서는 값이 안떠서 안되네요..
스크립트로 select 선택 시 input에 선택 값이 뜨게는 했는데
text로 보이기는 하지만 저장은 안되는지 안되더라구요.
P
Policia
5년 전
음 이해가 가지않습니다 1page에서 wr_1값이 선택되면 정확히 어떤역할을 하는것인가요?
1page에서 wr_1로 무엇을하나요?
뽈레야뽈레
5년 전
앗 아닙니다! 방법을 찾았네요!
답변 너무 감사합니다.
좋은 저녁보내세요 :)

댓글을 작성하려면 로그인이 필요합니다.

값을 브라우저에서 저장하는 거면 쿠키 값이나 세션으로 저장하면서 넘어 가도 됩니다.

로그인을 하고 값을 넘기는 거면 정말 편한 거고 그게 아니라면 아이피나 브라우저를 특징을 잡고 하는 편이 나을거 같습니다. 

보안적으로 좋지 않다고 판단 하시면 디비에다가 첨에 insert 하고 나서 먼가 클릭 하면 update 문으로 처리 하는 식으로 하셔도 비슷하게 만들수 있을거 같습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

뽈레야뽈레
5년 전
답변 감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

그누위즈

<?php

if (조건) {

  $url = "/2page.php";

} else {

  $url = "/3page.php";

}

?>

<form name="frm"  action = "<?php echo $url?>"  method="post">

이런식으로 처리하면 되지않으실까요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

뽈레야뽈레
5년 전
이 방법으로 하면 첫번째 if url은 적용이 되는데 else 부분 적용이 안됩니다 ㅠㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인