form input submit 질문입니다

form input submit 질문입니다

QA

form input submit 질문입니다

답변 2

본문

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

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

 

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

 

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

978180634_1727398284.8314.gif

 

 

 

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

 


<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') {
}

~~~~

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
filter #php ×
전체 15,429
© SIRSOFT
현재 페이지 제일 처음으로