form input submit 질문입니다

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
form input submit 질문입니다

QA

form input submit 질문입니다

본문

항상 많은 도움 주신분들 감사합니다.

질문드릴게 하나 있어 오늘도 글남깁니다 ^^

 

상황에 따라 포인트차감이 되는 시스템을 만들려고 하는데

 

conpig.php 파일을 생성후에 index.php 파일에 폼을 생성하여 서브밋 했을때 result.php 에서 동작하도록 하려고 합니다.

 

conpig.php 파일

변수명

$point1 = "10000"; 

$point2 = "20000"; 

$point3 = "30000"; 

 

 

index.php 파일


<form method="post" action="result.php">
<input type="hidden" name="check" value="checked">
 
  <div>
    <select name="" required>
     <option value="">선택</option>
     <option value="one"<? if ($point1=="one") echo "selected"; ?>>1회</option>
     <option value="two"<? if ($point2=="two") echo "selected"; ?>>2회</option>
     <option value="three"<? if ($point3=="three") echo "selected"; ?>>3회</option>
   </select>
 </div>
<input type="submit" class="btn btn-open"  name="answer" value="확인">
</form>

 

 

 

result.php파일 (예시)

<?php

 include_once("./config.php");

 

 if($_POST['check'] != "checked") {
    alert("정상적인 접근이 아닙니다.", "/shoping/cshop");

}

?>

 

if (만약 1회를 선택하고 서브밋 했다면?) {

  <?php insert_point($member['mb_id'], -$point1, '1회선택');?>

} else if (만약 2회를 선택하고 서브밋 했다면?) {

 <?php insert_point($member['mb_id'], -$point2, '2회선택');?>

} else .......

 

result.php 에서 전달된 밸류값에 따라 포인트함수를 이용해서 차감하도록 하려고합니다.

여기서 어떤코드가 들어가야 동작을 할까요 도움좀 주실분 있으시면 어떤형식으로 작업해야하는지만 말씀해주셔도 감사드리겠습니다

이 질문에 댓글 쓰기 :

답변 2

 

 

 

기존 코드를 다음과 같이 수정 해주세요

 


<select name="" required>

 

이 코드를 아래 처럼 네임값을 지정해주세요


<select name="pointSelect" required>

 

그리고 result.php 파일을 변경 합니다. 그냥 통으로 바꾸세요

 


<?php
 
include_once('./_common.php');
 
if($_POST['check'] != "checked") {
    alert("정상적인 접근이 아닙니다.");
}
 
if(!$is_member) {
    alert("로그인 후 이용해주세요.");
}
 
$mb_id = $member['mb_id'];
 
$pointSelect = isset($_POST['pointSelect']) ? $_POST['pointSelect'] : '';
$point = 0;
$point_title = '';
 
switch($pointSelect) {
    case "one":
        $point = 1000 * -1;
        $point_title = '1회선택';
        break;
    case "two":
        $point = 2000 * -1;
        $point_title = '2회선택';
        break;
    case "three":
        $point = 3000 * -1;
        $point_title = '3회선택';
        break;
    default:
        alert("정상적인 접근이 아닙니다.");
}
 
if($member['mb_point'] < $point) {
    alert("포인트가 부족합니다.");
}

 
insert_point($mb_id, $point, $point_title, '@etc', $mb_id, $point_title);
alert('정상적으로 처리되었습니다.');
?>

 

이렇게 하시면 원하는데로 될꺼에요

실행 화면은 위 움짤 참고 하세요

select name 을 설정하고 test 라고 하면

$_POST['test'] 이렇게 값ㅇ ㅣ넘어오겟쬬 그럼

if($_POST['test'] == 'one') {
}

~~~~

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

회원로그인

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