게시판 입력시 합계 또는 연산 관련 질문이예요~~
본문
안녕하세요~ 항상 눈팅만 열심히 하면서 배우고 있는데... 도저히 해결이 안되는 사항이 있어서요...
write.php 부분입니다... 여기서 수량과 단가를 입력해주고
view에서 자동으로 공급가액 부가세액 계약금액을 계산해서 보여지게 만들긴 했습니다.
근데 제가 도저히 안되는 부분이 ㅜㅜ
지금 현재 상태는 view.php에서
<tr>
<th scope="row"><label for="wr_5">수량</label></th>
<td>
<?php
echo cut_str(get_text(number_format($view['wr_5'])), 70); // 수량
?>
<?php
echo $view['wr_15']; // 단위
?>
</td>
</tr>
<tr>
<th scope="row"><label for="wr_6">단가<br>(부가세포함)</label></th>
<td>
<?php
echo cut_str(get_text(number_format($view['wr_6'])), 70); // 단가
?>
</td>
</tr>
<tr>
<th scope="row"><label for="wr_11">공급가액</label></th>
<td>
<?php
echo cut_str(get_text(number_format($view['wr_5'] * $view['wr_6'] / 1.1)), 70); // 공급가액
?>
</td>
</tr>
<tr>
<th scope="row"><label for="wr_12">부가세액</label></th>
<td>
<?php
echo cut_str(get_text(number_format(($view['wr_5'] * $view['wr_6']) - ($view['wr_5'] * $view['wr_6'] / 1.1))), 70); // 부가세액
?>
</td>
</tr>
<tr>
<th scope="row"><label for="wr_7">계약금액</label></th>
<td>
<?php
echo cut_str(get_text(number_format($view['wr_5'] * $view['wr_6'])), 70); // 계약금액
?>
</td>
</tr>
와 같이
echo cut_str(get_text(number_format($view['wr_5'] * $view['wr_6'])), 70);
출력 부분에서 계산을 해서 화면에 띄워줬는데요...
제가 하고싶은건
$wr_11=$wr_5 * $wr_6 / 1.1; // 공급가액
$wr_7=$wr_5 * $wr_6 ; //계약금액
$wr_12=$wr_7 - $wr_11; //부가세액
이렇게 계산을 해서 필드값에 저장 시키고
view.php 에서
echo cut_str(get_text(number_format($view['wr_11'])), 70);
위와 같이 wr_11 값을 그냥 보여지게 하고 싶습니다....
별짓을 다해봣는데 안되요 ㅜㅜ
질문1. 이코드는 어디에 존재 하여야 하는걸까요?
$wr_11=$wr_5 * $wr_6 / 1.1; // 공급가액
$wr_7=$wr_5 * $wr_6 ; //계약금액
$wr_12=$wr_7 - $wr_11; //부가세액
1)view.skin.php 2)write.skin.php 3)write_update.skin.php
검색을 열심히 해보니 write_update.skin.php 여기에 넣는게 맞다고 하신분이 계셨는데...
여기에 넣을때는 그냥... write_update.skin.php 파일을 만들어서 현재 게시판 폴더에 저 내용만
넣고 업로드 하면 되는걸까요?
질문2. write.skin.php 코드 안에 일단 공급가액, 계약금액, 부가세액 input은 <!--로 모두 없앴는데....
저게 필요할까요?
<tr>
<th scope="row"><label for="wr_5">수량</label></th>
<td>
<div id="autosave_wrapper">
<input type="number" name="wr_5" value="<?php echo $wr_5 ?>" id="wr_5" size="6" maxlength="255">
<select name="wr_15" id="wr_15">
<option value="m2"<?php echo ($write['wr_15'] == "m2") ? " selected" : "";?>>m2</option>
<option value="m3"<?php echo ($write['wr_15'] == "m3") ? " selected" : "";?>>m3</option>
<option value="TON"<?php echo ($write['wr_15'] == "TON") ? " selected" : "";?>>TON</option>
<option value="말"<?php echo ($write['wr_15'] == "말") ? " selected" : "";?>>말</option>
<option value="식"<?php echo ($write['wr_15'] == "식") ? " selected" : "";?>>식</option>
</select>
</div>
</td>
</tr>
<tr>
<th scope="row"><label for="wr_6">단가<br>(부가세포함)</label></th>
<td>
<div id="autosave_wrapper">
<input type="number" name="wr_6" value="<?php echo $wr_6 ?>" id="wr_6" size="15" maxlength="255">
</div>
</td>
</tr>
<!--<tr>
<th scope="row"><label for="wr_11">공급가액</label></th>
<td>
<div id="autosave_wrapper">
<input type="number" name="wr_11" value="<?php echo $write['wr_11'] ?>" id="wr_11" size="15" maxlength="255">
</div>
</td>
</tr>
<tr>
<th scope="row"><label for="wr_12">부가세액</label></th>
<td>
<div id="autosave_wrapper">
<input type="number" name="wr_12" value="<?php echo $write['wr_12'] ?>" id="wr_12" size="15" maxlength="255">
</div>
</td>
</tr>
<tr>
<th scope="row"><label for="wr_7">계약금액</label></th>
<td>
<div id="autosave_wrapper">
<input type="number" name="wr_7" value="<?php echo $wr_7 ?>" id="wr_7" value="" onkeyup="inputNumberFormat(this); sum5()" size="15" maxlength="255">
</div>
</td>
</tr> -->
아님 아래 같이 히든으로 라도 입력창을 만들어야 할까요
<input type=hidden name=wr_11>
<input type=hidden name=wr_12>
<input type=hidden name=wr_7>
질문3. 아래 코드에서
echo cut_str(get_text(number_format($wr5 * $wr6])), 70); // 계약금액
echo cut_str(get_text(number_format($view['wr_5'] * $view['wr_6'])), 70); // 계약금액
위에 출력값은 0이 나오고, 밑에 출력값은 제대로 나오는데 그차이가 뭘까요...
에고 너무 길게 썼네요... 진짜 별짓 다 해봤는데... 안되는거라 좀 자세히 좀 부탁 드릴께요....
제가 기본이 없어서 ㅜㅜ
답변 부탁드리고요.... 즐거운 하루되세요~~~
감사합니다~~~
답변 4
폰으로 보고, 앞에 글을 작성했다가 삭제후 다시 답글답니다.
기본적인 계산 방식은
- 공급가 = 수량 x 단가
- 부가세 = 공급가 x 0.1
아닌가요?
위에서 헛갈리게 만든것은
단가에 부가세포함이라고 적혀있는 규칙입니다.
물론 그럴수도있지만.
말씀하신
제가 하고싶은건
$wr_11=$wr_5 * $wr_6 / 1.1; // 공급가액
$wr_7=$wr_5 * $wr_6 ; //계약금액
$wr_12=$wr_7 - $wr_11; //부가세액
이렇게 계산을 해서 필드값에 저장 시키고
이 부분은
화면이 로딩될때 처리해줘야겠죠
PHP 의 문법의 흐름을 정확히 모르시거나 다른 직종 혹은 신입이시면
제작의뢰를 권장하구요
개념을 아신다면
위의 계산식은 변수입니다.
로딩시 가지고온 값을 화면에 뿌리는 내용이라면
변수대입은 기본으로 하실수있어야하니
위의 하고 싶으신 방식을
이해못하신다고 보여지는게 첫번째 이유이고
두번째는 제가 서두에 답을 드린내용은
계산룰이 맞는지 점검이 필요합니다.
부가세는 공급가의 10% 가 우리나라의 기준입니다.
./bbs/write_update.php
부부에서
wr_1 = '$wr_1',
이부분을 찾아보세요
그러면 insert,update 부분에 추가 필드 저장하는 부분이 있습니다.
그러면 @열린이글1 님이 원하는 식값을 계산해서 저장을 해주면 되겠죠?
다른 방법 2는 글쓰기 부분에서
wr_10 이라는 필드에 wr_1 + wr_2 라는 값을 합산값을 wr_10이라는 값에 저장하고 싶다면
글쓰기 폼 부분에서 <input type='hdden' name='wr_10' value=''>
글쓰기 저장을 할때 스크립트로 wr_1+wr2값을 합산해서 wr_10 에 결과값을 넣어주고 폼을 넘기는 거죠
그리고 궁금한점 wr_12까지 디비 필드가 있는것 같은대
필드를 추가를 해주셔나요 그누 여유필드는 10까지만 있는것으로 알고 있습니다.
제 글이 도움이 되셔으면 좋겠네요
wr_7 = '$wr_7', <= 중복과 빠진 부분이 있네용
테마사용하신다면
/html/theme/ABC/skin/board/construction/write_update.skin.php <= 요기에서
아니면
/bbs/write_update.php <= 요기에서
wr_1 = '$wr_1',
wr_2 = '$wr_2',
wr_3 = '$wr_3',
wr_4 = '$wr_4',
wr_5 = '$wr_5',
wr_6 = '$wr_6',
wr_7 = '$wr_5 * $wr_6',
wr_8 = '$wr_8',
wr_9 = '$wr_9',
wr_10 = '$wr_10'
wr_11 = '$wr_5 * $wr_6 / 1.1',
wr_12 = '$wr_7 - $wr_11' ";
그리고 더 아래로 내려가서...
wr_7 = '{$wr_5 * $wr_6}',
wr_8 = '{$wr_8}',
wr_9 = '{$wr_9}',
wr_10 = '{$wr_10}',
wr_11 = '{$wr_5 * $wr_6 / 1.1}',
wr_12 = '{$wr_7 - $wr_11}',
위와 같이 수정
하옵고 이리 수정을 하시면 사이트내 전 계시판에 적용이 되는데 괜찮으실런지 의문입니다.