spon1.php에서 정기후원, 일시후원 분기처리 방법 부탁드리겠습니다.

spon1.php에서 정기후원, 일시후원 분기처리 방법 부탁드리겠습니다.

QA

spon1.php에서 정기후원, 일시후원 분기처리 방법 부탁드리겠습니다.

본문

예를 들어 설명하겠습니다.

 

정기후원, 일시후원이 있습니다.

 

정기후원, 일시후원의 폼은 같습니다.

 

하지만 탭에서 정기후원을 클릭했을 경우에는 checkbox에 '정기후원'이 체크되어 있고

 

일시후원을 클릭했을 경우 checkbox에는 '일시후원'이 체크되어 있어야 합니다.

 

저같은 경우는 정기후원, 일시후원이 같은 폼을 사용하고 있기 때문에 spon1.php에서 분기처리를 하고 싶습니다.

 

어떻게 해야 하나요??

 

아래는 정기후원, 일시후원에 대한 Html입니다.

 

3552587158_1564377706.8941.jpg

이 질문에 댓글 쓰기 :

답변 3

sponser_b2.php 에서 $support_type 변수를 저장하고 있나요?

저장한 값을 다시 $support_type 로 불러온다는 가정하에 아래와 같이 하면 됩니다.


<input type="checkbox" id="regular" name="support_type" value="1" <? if($support_type==1) echo "checked"; ?>>
~~~~~ 생략 ~~~~~
<input type="checkbox" id="regular" name="support_type" value="2" <? if($support_type==2) echo "checked"; ?>>

 

그리고 소스를 올릴때는 text로 올리세요..

저렇게 이미지로 올리면 답변하는 사람이 다 입력을 해야해서 ㅜㅜ

eyekiss님 감사합니다.

답변주신 내용에 대해 한가지 더 궁금한 사항이 있어 질문드립니다.

<? if($support_type==1) echo "checked"; ?>로 했을 경우 정기후원으로

<? if($support_type==2) echo "checked"; ?>로 했을 경우 일시후원으로 분기가 되는 것은 이해가

되었습니다.

하지만 헤더에서 정기후원으로 클릭했을 경우 <? if($support_type==1) echo "checked"; ?>

이 코드에 따라 정기후원이 체크되어 있는 폼으로 넘어가야 되고

일시후원을 클릭했을 경우엔 <? if($support_type==2) echo "checked"; ?>이 코드에 따라 일시후원

이 체크되어 있는 폼으로 넘어가야 하는데

위 코드에서 그렇게 되려면 어떤식으로 해야하는지 궁금하여 질문드립니다.

아래는 정기후원, 일시후원에 대한 헤더 부분입니다.

<li class="dropdown">
            <a class="dropdown-toggle" data-toggle="dropdown" href="#">
                후원하기
                <b class="caret"></b>
            </a>
            <ul class="dropdown-menu">
                <li><a href="/sponsor_b.php">정기후원</a></li>
                <li><a href="/sponsor_a.php">일시후원</a></li>
            </ul>
</li>


----------------------------------------------------------------------
참고로 저는 아래와 같이 코딩하고 있습니다.

sponsor_b.php이란 페이지와  sponsor_b2.php라는 페이지가 있습니다.
 
sponsor_b.php이란 페이지에 나에 대한 정보를 입력하고 '다음' 버튼을 누르면

spon2 페이지가 나옵니다. sponsor_b2.php페이지에 나에 대한 정보를 추가로 입력하고 '다음' 버튼을 누르면

sponsor_b.php에 입력한 나에 대한 정보와 sponsor_b2.php에 입력한 나에 대한 정보가

spon_table 테이블 하나에 값이 저장되어집니다.

저같은 경우 sponsor_b.php에서 sponsor_b2.php로 갈 때 sponsor_b2.php에서 hidden으로 값을 받고 있습니다.

 탭을 클릭했을때의 변수를 넘어오게 처리해서 그 변수가 있을 경우

checked를 해주면 될것 같은데요

 변수처리가 안된다면 javascript로  클릭한 탭에 따라서 radio 버튼의 id 값에따라 checked 처리 해주는걸로   사용 가능할것 같아요

<li><a href="/sponsor_b.php?support_type=1">정기후원</a></li> 
<li><a href="/sponsor_a.php?support_type=2">일시후원</a></li> 

이렇게 값을 넘기구요..
$_GET['support_type'] 로 값을 받으면 됩니다.

디비에 저장했던 값과 비교해서 어떤걸 우선 순위로 둘것인가 정해서 변수에 넣어주세요.

예) $row 로 디비에 값을 가져온다고 하면,

$support_type = $_GET['support_type'];

if($row['support_type']) $support_type = $row['support_type'];

헤어부분에 아래 2행과 같이 하고
<li><a href="/sponsor_b.php?support_type=1">정기후원</a></li>
<li><a href="/sponsor_b.php?support_type=2">일시후원</a></li>


sponsor_b.php에서 아래와 같이 코드를 작성해보니
헤더에서 정기후원을 클릭했을 경우 정기후원에 체크박스가 채워져 있고
일시후원을 클릭했을 경우 일시후원에 체크박스가 채워져 있는 것을 확인할 수 있었습니다.
<tr>
  <th class="tac">후원종류</th>
  <td class="tal">
    <span class="">
      <input type="checkbox" id="regular" name="support_type" value="1" <? if($support_type == 1) echo "checked"; ?>>
      <label for="regular">정기후원</label>
    </span>
    <span class="ml30px">
      <input type="checkbox" id="temporary" name="support_type" value="2" <? if($support_type == 2) echo "checked"; ?>>
      <label for="temporary">일시후원</label>
    </span>
  </td>
</tr>

이 방법이 맞는 것인가요?

eyekiss님께서 $_GET['support_type'] 로 값을 받으면 된다는 답변 이하 부분이 적용을 안했는데도 되는 부분이어서 질문드립니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,674 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT