아래 첨부 화일처럼 견적서 형태를 만들고 싶습니다. 정보
아래 첨부 화일처럼 견적서 형태를 만들고 싶습니다.첨부파일
본문
아래처럼 그누보드를 이용해서 견적서를 만들려 합니다.
정해진 금액 에 따른 수량 입력값으로 얻어지는 결과값이 나오도록 하려 합니다.
도움을 부탁드립니다.
댓글 전체
이게 뭐죠?
어느게시판을~~
어느게시판을~~
http://www.sir.co.kr/bbs/board.php?bo_table=g4_qa&wr_id=52706
계산 한걸 이제 계산표로 뽑을때는 이걸 사용하구요 ^^
계산 한걸 이제 계산표로 뽑을때는 이걸 사용하구요 ^^
어느것을 사용할까요?
천국의 요정 장난도 한계가 있고 요령껏 하십시요.
이따위식의 장난 그누에서 않먹힙니다.
조용히 않넘어 가기를 원하십니까.
이따위식의 장난 그누에서 않먹힙니다.
조용히 않넘어 가기를 원하십니까.
이사람 장난 하는것도 아니거 ㅡ.ㅡ+
답변들이 모두 아니군요. 쉽게 수량을 입력하면 정해진 금액으로 곱해지고... 합계가 나타나는것입니다.
쉽게 예를들어 단가 5000원으로 정해진 항목에는 수량 5를 입력하면 25000이 입력이 되고...
맨 아래 총 합계가 항목별로 더해지는 작업입니다.
쉽게 예를들어 단가 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> </td>
<td><B>선 택</B></td>
</tr>
<tr><td colspan=5 bgcolor=#ACACAC height=1></td></tr>
<tr>
<td> <FONT COLOR="#599023"><B>솔루션</B></FONT></td>
<td><B>ㆍ</B>1카피 구입</td>
<td><?=print_qty('100', 'hidden')?>1 COPY</td>
<td><?=print_amount('100')?>원 </td>
<td><?=print_checkbox('100')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td> <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>히트상품, 추천상품, 신규상품, 경매, 공동구매 타이틀 이미지<br>
<B>ㆍ</B>커뮤니티, 이벤트, 장바구니, 온라인투표, 방문자수 타이틀 이미지
</td>
<td><?=print_qty('200', 'hidden')?>-</td>
<td><?=print_amount('200')?>원 </td>
<td><?=print_checkbox('200')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td rowspan="2"> <FONT COLOR="#599023"><B>JPG 배너</B></FONT></td>
<td><B>ㆍ</B>왼쪽 또는 메인우측 배너</td>
<td><?=print_qty('300')?>개</td>
<td><?=print_amount('300')?>원 </td>
<td><?=print_checkbox('300')?></td>
</tr>
<tr>
<td><B>ㆍ</B>스크롤 배너</td>
<td><?=print_qty('310')?>개</td>
<td><?=print_amount('310')?>원 </td>
<td><?=print_checkbox('310')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td rowspan="5"> <FONT COLOR="#599023"><B>플래쉬</B></FONT></td>
<td><B>ㆍ</B>왼쪽 또는 메인우측 배너</td>
<td><?=print_qty('400')?>개</td>
<td><?=print_amount('400')?>원 </td>
<td><?=print_checkbox('400')?></td>
</tr>
<tr>
<td><B>ㆍ</B>스크롤 배너</td>
<td><?=print_qty('410')?>개</td>
<td><?=print_amount('410')?>원 </td>
<td><?=print_checkbox('410')?></td>
</tr>
<tr>
<td><B>ㆍ</B>메인 중앙 이미지</td>
<td><?=print_qty('420', 'hidden')?>-</td>
<td><?=print_amount('420')?>원 </td>
<td><?=print_checkbox('420')?></td>
</tr>
<tr>
<td><B>ㆍ</B>상품분류(카테고리)</td>
<td><?=print_qty('430', 'hidden')?>-</td>
<td><?=print_amount('430')?>원 </td>
<td><?=print_checkbox('430')?></td>
</tr>
<tr>
<td><B>ㆍ</B>상단 메뉴</td>
<td><?=print_qty('440', 'hidden')?>-</td>
<td><?=print_amount('440')?>원 </td>
<td><?=print_checkbox('440')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td rowspan="5"> <FONT COLOR="#599023"><B>페이지</B></FONT></td>
<td><B>ㆍ</B>마이페이지</td>
<td><?=print_qty('500', 'hidden')?>-</td>
<td><?=print_amount('500')?>원 </td>
<td><?=print_checkbox('500')?></td>
</tr>
<tr>
<td><B>ㆍ</B>회사소개</td>
<td><?=print_qty('510', 'hidden')?>-</td>
<td><?=print_amount('510')?>원 </td>
<td><?=print_checkbox('510')?></td>
</tr>
<tr>
<td><B>ㆍ</B>약도</td>
<td><?=print_qty('520', 'hidden')?>-</td>
<td><?=print_amount('520')?>원 </td>
<td><?=print_checkbox('520')?></td>
</tr>
<tr>
<td><B>ㆍ</B>팝업창</td>
<td><?=print_qty('530')?>개</td>
<td><?=print_amount('530')?>원 </td>
<td><?=print_checkbox('530')?></td>
</tr>
<tr>
<td><B>ㆍ</B>개별페이지</td>
<td><?=print_qty('540')?>개</td>
<td><?=print_amount('540')?>원 </td>
<td><?=print_checkbox('540')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td> <FONT COLOR="#599023"><B>전체</B></FONT></td>
<td><B>ㆍ</B>상단 이미지 변경</td>
<td><?=print_qty('600', 'hidden')?>-</td>
<td><?=print_amount('600')?>원 </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>예상견적 합계 (부가세 포함) </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>
아래의 소스는 이곳 운영자님이 공개한 소스였는데..이곳 어딘가에 있겠지요.
-----------------------------------------------------------------------
해당소스
-----------------------------------------------------------------------
<?
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> </td>
<td><B>선 택</B></td>
</tr>
<tr><td colspan=5 bgcolor=#ACACAC height=1></td></tr>
<tr>
<td> <FONT COLOR="#599023"><B>솔루션</B></FONT></td>
<td><B>ㆍ</B>1카피 구입</td>
<td><?=print_qty('100', 'hidden')?>1 COPY</td>
<td><?=print_amount('100')?>원 </td>
<td><?=print_checkbox('100')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td> <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>히트상품, 추천상품, 신규상품, 경매, 공동구매 타이틀 이미지<br>
<B>ㆍ</B>커뮤니티, 이벤트, 장바구니, 온라인투표, 방문자수 타이틀 이미지
</td>
<td><?=print_qty('200', 'hidden')?>-</td>
<td><?=print_amount('200')?>원 </td>
<td><?=print_checkbox('200')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td rowspan="2"> <FONT COLOR="#599023"><B>JPG 배너</B></FONT></td>
<td><B>ㆍ</B>왼쪽 또는 메인우측 배너</td>
<td><?=print_qty('300')?>개</td>
<td><?=print_amount('300')?>원 </td>
<td><?=print_checkbox('300')?></td>
</tr>
<tr>
<td><B>ㆍ</B>스크롤 배너</td>
<td><?=print_qty('310')?>개</td>
<td><?=print_amount('310')?>원 </td>
<td><?=print_checkbox('310')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td rowspan="5"> <FONT COLOR="#599023"><B>플래쉬</B></FONT></td>
<td><B>ㆍ</B>왼쪽 또는 메인우측 배너</td>
<td><?=print_qty('400')?>개</td>
<td><?=print_amount('400')?>원 </td>
<td><?=print_checkbox('400')?></td>
</tr>
<tr>
<td><B>ㆍ</B>스크롤 배너</td>
<td><?=print_qty('410')?>개</td>
<td><?=print_amount('410')?>원 </td>
<td><?=print_checkbox('410')?></td>
</tr>
<tr>
<td><B>ㆍ</B>메인 중앙 이미지</td>
<td><?=print_qty('420', 'hidden')?>-</td>
<td><?=print_amount('420')?>원 </td>
<td><?=print_checkbox('420')?></td>
</tr>
<tr>
<td><B>ㆍ</B>상품분류(카테고리)</td>
<td><?=print_qty('430', 'hidden')?>-</td>
<td><?=print_amount('430')?>원 </td>
<td><?=print_checkbox('430')?></td>
</tr>
<tr>
<td><B>ㆍ</B>상단 메뉴</td>
<td><?=print_qty('440', 'hidden')?>-</td>
<td><?=print_amount('440')?>원 </td>
<td><?=print_checkbox('440')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td rowspan="5"> <FONT COLOR="#599023"><B>페이지</B></FONT></td>
<td><B>ㆍ</B>마이페이지</td>
<td><?=print_qty('500', 'hidden')?>-</td>
<td><?=print_amount('500')?>원 </td>
<td><?=print_checkbox('500')?></td>
</tr>
<tr>
<td><B>ㆍ</B>회사소개</td>
<td><?=print_qty('510', 'hidden')?>-</td>
<td><?=print_amount('510')?>원 </td>
<td><?=print_checkbox('510')?></td>
</tr>
<tr>
<td><B>ㆍ</B>약도</td>
<td><?=print_qty('520', 'hidden')?>-</td>
<td><?=print_amount('520')?>원 </td>
<td><?=print_checkbox('520')?></td>
</tr>
<tr>
<td><B>ㆍ</B>팝업창</td>
<td><?=print_qty('530')?>개</td>
<td><?=print_amount('530')?>원 </td>
<td><?=print_checkbox('530')?></td>
</tr>
<tr>
<td><B>ㆍ</B>개별페이지</td>
<td><?=print_qty('540')?>개</td>
<td><?=print_amount('540')?>원 </td>
<td><?=print_checkbox('540')?></td>
</tr>
<tr><td colspan=5 bgcolor=#DADADA height=1></td></tr>
<tr>
<td> <FONT COLOR="#599023"><B>전체</B></FONT></td>
<td><B>ㆍ</B>상단 이미지 변경</td>
<td><?=print_qty('600', 'hidden')?>-</td>
<td><?=print_amount('600')?>원 </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>예상견적 합계 (부가세 포함) </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">
수량: <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">
수량: <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">
수량: <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>
다음의 스크립트를 참고하십시오.
<!-- Added by kdpark(Victo) -->
<form name="form1">
인트로(20만원)<input type=hidden name="intro" value="200000">
수량: <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">
수량: <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">
수량: <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="돋움"> </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="돋움"> 원 </font></span></p>
</DIV></TD>
</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="돋움"> </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="돋움"> 원 </font></span></p>
</DIV></TD>
</TR>
허걱 자기가 질문하고 답변을 받은뒤 다른 아이디 만들어 회수 해 가시네요.
그까짓 포인트가 뭐라고...
그까짓 포인트가 뭐라고...
견적