아래 첨부 화일처럼 견적서 형태를 만들고 싶습니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

아래 첨부 화일처럼 견적서 형태를 만들고 싶습니다. 정보

아래 첨부 화일처럼 견적서 형태를 만들고 싶습니다.

첨부파일

1.htm (27.4K) 212회 다운로드 2007-02-17 05:47:21

본문

아래처럼 그누보드를 이용해서 견적서를 만들려 합니다.
정해진 금액 에 따른 수량 입력값으로 얻어지는 결과값이 나오도록 하려 합니다.
도움을 부탁드립니다.

댓글 전체

천국의 요정 장난도 한계가 있고 요령껏 하십시요.
이따위식의 장난 그누에서 않먹힙니다.

조용히 않넘어 가기를 원하십니까.
답변들이 모두 아니군요. 쉽게 수량을 입력하면 정해진 금액으로 곱해지고... 합계가 나타나는것입니다.
쉽게 예를들어 단가 5000원으로 정해진 항목에는  수량 5를 입력하면  25000이 입력이 되고...
맨 아래 총 합계가 항목별로 더해지는 작업입니다.
혹시 이정도면 어떨까요.
아래의 소스는 이곳 운영자님이 공개한 소스였는데..이곳 어딘가에 있겠지요.

-----------------------------------------------------------------------
해당소스
-----------------------------------------------------------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

define("_DOCTYPE_", "DESIGN");

$sub_title = "실시간 예상견적";

function print_checkbox($idx) {
    return "<input type='checkbox' name='chk[$idx]' value='$idx' onclick='compute();'>";
}

function print_qty($idx, $hidden='') {
    if ($hidden == 'hidden') {
        return "<input type='hidden' name='qty[$idx]' value='1'>";
    } else {
        $s = "<select name='qty[$idx]' onchange='compute();'>";
        for ($i=1; $i<=5; $i++) {
            $s .= "<option value='$i'>$i";
        }
        $s .= "</select>";
        return $s;
    }
}

function print_amount($idx) {
    return "<input type=text name='amount[$idx]' size=10 readonly style='text-align:right; border-width:0px;'>";
}
?>
<table width="100%" cellpadding=1 cellspacing=1 align=center bgcolor=#FFFFFF>
<form name=fsbestimate>
<colgroup width=100 align=center>
<colgroup width=''>
<colgroup width=60 align=center>
<colgroup width=100 align=right>
<colgroup width=60 align=center>
<tr height=25 align=center>
    <td><B>항 목</B></td>
    <td><B>내 용</B></td>
    <td><B>수 량</B></td>
    <td><B>금 액</B>&nbsp;</td>
    <td><B>선 택</B></td>
</tr>
<tr><td colspan=5 bgcolor=#ACACAC height=1></td></tr>
<tr>
    <td>&nbsp;&nbsp;<FONT COLOR="#599023"><B>솔루션</B></FONT></td>
    <td><B>ㆍ</B>1카피 구입</td>
    <td><?=print_qty('100', 'hidden')?>1 COPY</td>
    <td><?=print_amount('100')?>원&nbsp;</td>
    <td><?=print_checkbox('100')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
    <td>&nbsp;&nbsp;<FONT COLOR="#599023"><B>메인화면</B></FONT></td>
    <td style='line-height:170%'>
        <B>ㆍ</B>상단메뉴 , 메인 중앙 이미지<br>
        <B>ㆍ</B>로그인+로그아웃<br>
        <B>ㆍ</B>상품분류(카테고리)<br>
        <B>ㆍ</B>상품검색<br>
        <B>ㆍ</B>히트상품, 추천상품, 신규상품, 경매, 공동구매&nbsp;타이틀 이미지<br>
        <B>ㆍ</B>커뮤니티, 이벤트, 장바구니, 온라인투표, 방문자수 타이틀 이미지
    </td>
    <td><?=print_qty('200', 'hidden')?>-</td>
    <td><?=print_amount('200')?>원&nbsp;</td>
    <td><?=print_checkbox('200')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
    <td rowspan="2">&nbsp;&nbsp;<FONT COLOR="#599023"><B>JPG 배너</B></FONT></td>
    <td><B>ㆍ</B>왼쪽 또는 메인우측 배너</td>
    <td><?=print_qty('300')?>개</td>
    <td><?=print_amount('300')?>원&nbsp;</td>
    <td><?=print_checkbox('300')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>스크롤 배너</td>
    <td><?=print_qty('310')?>개</td>
    <td><?=print_amount('310')?>원&nbsp;</td>
    <td><?=print_checkbox('310')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
    <td rowspan="5">&nbsp;&nbsp;<FONT COLOR="#599023"><B>플래쉬</B></FONT></td>
    <td><B>ㆍ</B>왼쪽 또는 메인우측 배너</td>
    <td><?=print_qty('400')?>개</td>
    <td><?=print_amount('400')?>원&nbsp;</td>
    <td><?=print_checkbox('400')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>스크롤 배너</td>
    <td><?=print_qty('410')?>개</td>
    <td><?=print_amount('410')?>원&nbsp;</td>
    <td><?=print_checkbox('410')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>메인 중앙 이미지</td>
    <td><?=print_qty('420', 'hidden')?>-</td>
    <td><?=print_amount('420')?>원&nbsp;</td>
    <td><?=print_checkbox('420')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>상품분류(카테고리)</td>
    <td><?=print_qty('430', 'hidden')?>-</td>
    <td><?=print_amount('430')?>원&nbsp;</td>
    <td><?=print_checkbox('430')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>상단 메뉴</td>
    <td><?=print_qty('440', 'hidden')?>-</td>
    <td><?=print_amount('440')?>원&nbsp;</td>
    <td><?=print_checkbox('440')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
    <td rowspan="5">&nbsp;&nbsp;<FONT COLOR="#599023"><B>페이지</B></FONT></td>
    <td><B>ㆍ</B>마이페이지</td>
    <td><?=print_qty('500', 'hidden')?>-</td>
    <td><?=print_amount('500')?>원&nbsp;</td>
    <td><?=print_checkbox('500')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>회사소개</td>
    <td><?=print_qty('510', 'hidden')?>-</td>
    <td><?=print_amount('510')?>원&nbsp;</td>
    <td><?=print_checkbox('510')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>약도</td>
    <td><?=print_qty('520', 'hidden')?>-</td>
    <td><?=print_amount('520')?>원&nbsp;</td>
    <td><?=print_checkbox('520')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>팝업창</td>
    <td><?=print_qty('530')?>개</td>
    <td><?=print_amount('530')?>원&nbsp;</td>
    <td><?=print_checkbox('530')?></td>
</tr>
<tr>
    <td><B>ㆍ</B>개별페이지</td>
    <td><?=print_qty('540')?>개</td>
    <td><?=print_amount('540')?>원&nbsp;</td>
    <td><?=print_checkbox('540')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
    <td>&nbsp;&nbsp;<FONT COLOR="#599023"><B>전체</B></FONT></td>
    <td><B>ㆍ</B>상단 이미지 변경</td>
    <td><?=print_qty('600', 'hidden')?>-</td>
    <td><?=print_amount('600')?>원&nbsp;</td>
    <td><?=print_checkbox('600')?></td>
</tr>
<tr><td colspan=5 bgcolor=#ACACAC height=2></td></tr>
<tr>
    <td colspan="3" align=right height=35>예상견적 합계 (부가세 포함)&nbsp;&nbsp;</td>
    <td align=center colspan=2><input type="text" name="tot_amount" size="10" style='text-align:right; border-width:0px;'> 원 이상</td>
</tr>
</form>
</table>

<script>
    var money = new Array();
    money[100] = 300000;    // 영카트
    money[200] = 300000;    // 메인화면
    money[300] = 20000;    // JPG 배너 : 왼쪽 또는 메인우측 배너
    money[310] = 30000;    //          스크롤 배너   
    money[400] = 30000;    // 플래쉬 : 왼쪽 또는 메인우측 배너
    money[410] = 50000;    //      : 스크롤 배너
    money[420] = 50000;    //      : 메인 중앙 이미지
    money[430] = 50000;    //      : 상품분류(카테고리)
    money[440] = 50000;    //      : 상단 메뉴
    money[500] = 70000;    // 페이지 : 마이페이지
    money[510] = 30000;    //      : 회사소개
    money[520] = 30000;    //      : 약도
    money[530] = 40000;    //      : 팝업창
    money[540] = 50000;    //      : 개별페이지
    money[600] = 300000;    // 전체 : 상단 이미지 변경

    function compute()
    {
        var f = document.fsbestimate;
        var idx = null;
        var amt = null;
        var tot = 0;

        for (i=0; i<f.elements.length; i++) {
            if (f.elements[i].type == "checkbox") {
                idx = f.elements[i].value;
                if (f.elements[i].checked) {
                    amt = parseInt(f.elements("qty["+idx+"]").value) * money[idx];
                } else {
                    amt = 0;
                }
                f.elements("amount["+idx+"]").value = number_format(amt.toString());
                tot += amt;
            }
        }
        tot = tot + (tot * 0.1);
        f.tot_amount.value = number_format(tot.toString());
    }

    document.fsbestimate.elements("chk[100]").checked = true;
    compute();
</script>
자동 계산되는스크립트를 원하시는 것 같은데요.
다음의 스크립트를 참고하십시오.


<!-- Added by kdpark(Victo) -->

<form name="form1">

인트로(20만원)<input type=hidden name="intro" value="200000">&nbsp;&nbsp;
수량: <input type=text name="intro_count" size=3 onkeyup="my_calc(this.form.intro, this.form.intro_count, this.form.intro_sum)">
합계: <input type=text name="intro_sum" size=6 readonly value="0"><br><br>


메인(10만원)<input type=hidden name="main" value="100000">&nbsp;&nbsp;
수량: <input type=text name="main_count"  size=3  onkeyup="my_calc(this.form.main, this.form.main_count, this.form.main_sum)">
합계: <input type=text name="main_sum" size=6 readonly value="0"><br><br>


서브페이지(2만원)<input type=hidden name="subpage" value="20000">&nbsp;&nbsp;
수량: <input type=text name="subpage_count"  size=3 onkeyup="my_calc(this.form.subpage, this.form.subpage_count, this.form.subpage_sum)">
합계: <input type=text name="subpage_sum" size=6 readonly value="0"><br><br>


전체 합계: <input type=text name="total" size=9 value="0">


<script language="javascript">

  function my_calc(item, item_count, item_sum){

      if(item_count.value=="")    var count = 0;
      else                        var count = item_count.value;

      item_sum.value = eval(item.value) * eval(count) ;

  my_total(document.form1);
 
  }

  function my_total(f){

f.total.value = eval(f.intro_sum.value)+ eval(f.main_sum.value) + eval(f.subpage_sum.value);
  }



</script>

</form>
<TR>
                        <TD bgColor=#ffffff width="251" height="23" colspan="3">
                        <DIV align=center>
                                <p align="center"><span style="font-size:9pt;"><font face="돋움">중자</font></span></p>
</DIV></TD>
                        <td width="124" height="23" bgcolor="white">
                            <p align="right"><span style="font-size:9pt;"><input type=text name="wr_15" size=3 onkeyup="my_calc(this.form.wr_14, this.form.wr_15, this.form.wr_16)"  style="text-align:right;"> </span><span style="font-size:9pt;"><font face="돋움">대자</font></span></p>
</td>
                        <td width="108" height="23" bgcolor="white">
                            <p align="right"><span style="font-size:9pt;"><font face="돋움">600,000원</font></span><span style="font-size:9pt;"><input type=hidden name="wr_14" value="600000"><font face="돋움">&nbsp;&nbsp; </font></span></p>
</td>
                        <TD bgColor=#ffffff width="122" height="23">
                        <DIV align=center>
                                <p align="right"><span style="font-size:9pt;"><input type=text name="wr_16" size="12" readonly value="0" style="text-align:right;"></span><span style="font-size:9pt;"><font face="돋움"> 원 &nbsp;</font></span></p>
</DIV></TD>
</TR>
전체 66,558 |RSS
그누4 질문답변 내용 검색

회원로그인

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