시간합산.... 한번더 질문드립니다.. > 그누4 질문답변

그누4 질문답변

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

시간합산.... 한번더 질문드립니다.. 정보

시간합산.... 한번더 질문드립니다..

본문

갈수록 태산입니다..ㅠㅠ
먼저 여기까지 도와주신 질문자님, 청춘불안정님께 진심으로 감사드립니다.
제 실력이 실력인지라....ㅠㅠ

문의 하고자 하는내용은
그림 처럼 되어 있는 리스트에서 각 분류별로 정렬된 글의 소요시간의 합산을 하려고 합니다.
시간은 wr_1 필드에서 저장이 됩니다.

<script language="JavaScript">
<!--
var hour = "0"
var min = "00"
var sec = "0"

function timer(){

if ((min < 10) && (min != "00")){
    dismin = "0" + min
}
else{
    dismin = min
}

    dissec = (sec < 10) ? sec = "0" + sec : sec
    document.timer.counter.value = hour + ":" + dismin + ":" + dissec
    document.fwrite.wr_1.value=document.timer.counter.value;

    if (sec < 59){
        sec++
    }
    else{
        sec = "0"
        min++
        if (min > 59){
            min = "00"
            hour++
        }
    }

    window.setTimeout("timer()",1000)
}

<?php list($h, $m, $s) = explode(':', $write['wr_1']); ?>

var hour = "<?php echo (int)$h; ?>";
var min = "<?php echo $m; ?>";
var sec = "<?php echo $s; ?>";
// -->
</script>
<body onLoad="timer()">

<input type=hidden name=wr_1    value="">

<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
    <td width="20%" height="30" align="center"><span class=w_title>작업시간</span></td>
    <td width="1" valign="bottom"><img src="<?=$board_skin_path?>/img/gray_line.gif" width="1" height="10"></td>
    <td width="79%" class=w_padding><form name="timer">
<input type=text value="" name="counter" size=8>
</form>

</TD>
</tr>
<tr>
    <td height="1" background="<?=$board_skin_path?>/img/dot_bg.gif" colSpan=10 align=middle></td>
</tr>
</table>


이렇게 해서 wr_1 입력이 됩니다만...
그림처럼 정렬된 리스트(분류사용)에서 시간을 합산한 값을 구해야 하는데요..
정말 별이 보입니다..

댓글 전체

청춘불안정님 답변 감사합니다..그런데 제 실력으로는 너무 어려워서...ㅠㅠ
제가 쓰고 있는 list.skin.php 소스 입니다..

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

// 선택옵션으로 인해 셀합치기가 가변적으로 변함
$colspan = 7;
if ($is_category) $colspan++;
if ($is_checkbox) $colspan++;
if ($is_good) $colspan++;
if ($is_nogood) $colspan++;

// 제목이 두줄로 표시되는 경우 이 코드를 사용해 보세요.
// <nobr style='display:block; overflow:hidden; width:000px;'>제목</nobr>
?>
<br><b>&nbsp;※문건현황</b><br>
 <!-- 상단 카테고리 시작 -->
<? if ($is_category) { ?>
<table width="100%" cellspacing="0" cellpadding="0" border=0>
<tr>
<td height=10>
<fieldset style='padding:0 10 10 15;margin:0 0 0 0;word-break:break-all;' class="ggambo_ta8">
<table width=100% border=0 cellpadding=5 cellspacing=0 bgcolor=#EFEFEF>
<tr>
<td height=10 bgcolor=#FFFFFF colspan="2"></td>
</tr>
<tr>
<td align=center width=60>
<? 
$cnt_bo_1 = $bo_1[0] ? $bo_1[0] : 4; // 한줄당 분류 갯수(현재:20)
$cnt = 1;
$cnt0 = 0;
$bb_s=""; $bb_e="";
$b_s=""; $b_e="";
$arr = explode("|", $board[bo_category_list]); // 구분자가 , 로 되어 있음
$str = " ";
for ($i=0; $i<count($arr); $i++)
if (trim($arr[$i]))  {
if ($sca == $arr[$i]) { $cnt0++; $b_s="<b>"; $b_e="</b>"; } else {$b_s=""; $b_e="";}
$sql1 = " SELECT count(*) as cCount FROM $write_table WHERE ca_name = '$arr[$i]' and wr_comment >= 0 ";//카테고리내용갯수표시
$board1 = sql_fetch($sql1);//카테고리내용갯수표시 -> ($board1[cCount])
$str .= " &nbsp;&nbsp;<a href='./board.php?bo_table=$bo_table&sca=".($arr[$i])."'><span style='color:#222222;'>$b_s$arr[$i]</span></a> <span style='font-size:7.5pt;color:#FE5731;'>($board1[cCount])$b_e</span>&nbsp;&nbsp;";
if ($cnt == $cnt_bo_1) { $cnt = 0; $str .= "<br>"; }
$cnt++;
}
if ($cnt0 == 0 ) { $bb_s="<b>"; $bb_e="</b>"; }
?>
  <?echo "  ";echo $bb_s;?><a href='./board.php?bo_table=<?=$bo_table?>&page=<?=$page?>'>전체보기</a></td><td bgcolor="#FFFFFF"><?=$bb_e?>
<?=$str?>
</td>
</tr>
</table>
</fieldset>
</td>
</tr>
</table>
<? } ?>
<table width=100% border=0 cellpadding=0 cellspacing=0><tr><td height=5></td></tr></table>
<!-- 상단 카테고리 끝 -->
<table width="<?=$width?>" align="center" cellpadding="0" cellspcing="0"><tr><td>

<!-- 분류 셀렉트 박스, 게시물 몇건, 관리자화면 링크 시작 -->
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
    <td width="10%" align="left"></td>
    <td width="40%" align="left" valign="bottom"></td>
    <td width="50%" align="right" valign="bottom"><font class=w_font>작성문건 <?=number_format($total_count)?>건</font><? if ($admin_href) { ?><a href="<?=$admin_href?>"><img src="<?=$board_skin_path?>/img/admin_button.gif" title="관리자" width="63" height="22" border="0" align="absmiddle"></a><? } ?></td>
</tr>
</table>
<!-- 분류 셀렉트 박스, 게시물 몇건, 관리자화면 링크 끝 -->

<!-- 여백 --><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td height="10"></td></tr></table>

<!-- 게시판 제목 시작 -->
<table width="700" border="1" cellspacing="0" cellpadding="0" bordercolordark="EEEEEE" bordercolorlight="959595">
<form name="fboardlist" method="post" action="">
<input type="hidden" name="bo_table" value="<?=$bo_table?>">
<input type="hidden" name="sfl"      value="<?=$sfl?>">
<input type="hidden" name="stx"      value="<?=$stx?>">
<input type="hidden" name="spt"      value="<?=$spt?>">
<input type="hidden" name="page"    value="<?=$page?>">
<input type="hidden" name="sw"      value="">
<tr>
    <td height="20" width="50" align="center" valign="middle" bgcolor="#7BB2D6"><font style="font-family:돋움; font-size:9pt; color:#FFFFFF"><strong>번호</strong></font></td>
    <? if ($is_category) { ?><td width="70" align="center" valign="middle" bgcolor="#EEEEEE"><font class=w_title><strong>분류</strong></font></td><? } ?>
    <? if ($is_checkbox) { ?><td width="40" align="center" valign="middle" bgcolor="#EEEEEE"><INPUT onclick="if (this.checked) all_checked(true); else all_checked(false);" type=checkbox></td><? } ?>
    <td width="290" align="center" bgcolor="#EEEEEE"><font class=w_title><strong>문건제목</strong></font></td>
    <td width="100" align="center" valign="middle" bgcolor="#EEEEEE"><font class=w_title><strong>작성자</strong></font></td>
<td width="80" align="center" valign="middle" bgcolor="#EEEEEE"><font class=w_title><strong>소요시간</strong></font></td>
    <td width="80" align="center" valign="middle" bgcolor="#EEEEEE"><?=subject_sort_link('wr_datetime', $qstr2, 1)?><font class=w_title><strong>날짜</strong></font></a></td>
    <td width="40" align="center" valign="middle" bgcolor="#EEEEEE"><font class=w_title><strong>조회</strong></font></td>
<td width="70" align="center" valign="middle" bgcolor="#EEEEEE"><font class=w_title><strong>진행상황</strong></font></td>
    </tr>
</table>
<!-- 게시판 제목 끝 -->

<!-- 게시물 리스트 시작 -->
<table width="700" border="1" cellspacing="0" cellpadding="0" bordercolordark="ffffff" bordercolorlight="959595">
<? for ($i=0; $i<count($list); $i++) { ?>
<tr <? if ($list[$i][is_notice]) { ?>bgcolor="#F9FBFB"<? } ?>>
    <td height="20" width="50" align="center" valign="middle">
        <?
        if ($list[$i][is_notice]) // 공지사항
            echo "<img src=\"$board_skin_path/img/notice_icon.gif\" width=30 height=16>";
        else if ($wr_id == $list[$i][wr_id]) // 현재위치
            echo "<font class=w_num><strong>{$list[$i][num]}</strong></font>";
        else
            echo "<font class=w_list>{$list[$i][num]}</font>";
        ?></td>
    <? if ($is_category) { ?><td width="70" align="center" valign="middle"><a href="<?=$list[$i][ca_name_href]?>"><font color=f57300><span class=small><?=$list[$i][ca_name]?></span></font></td><? } ?>
    <? if ($is_checkbox) { ?><td width="40" align="center" valign="middle"><input type=checkbox name=chk_wr_id[] value="<?=$list[$i][wr_id]?>"></td><? } ?>
    <td width="290" align="left" valign="middle">
        <?
        echo $nobr_begin;
        echo $list[$i][reply];
        echo $list[$i][icon_reply];
        echo "&nbsp;<a href='{$list[$i][href]}'>";
        if ($list[$i][is_notice])
            echo "<font class=w_notice><strong>{$list[$i][subject]}</strong></font>";
        else
            echo "<font class=w_list><b>{$list[$i][subject]}</b></font>";
        echo "</a>";

        if ($list[$i][comment_cnt])
            echo " <a href=\"javascript:{$list[$i][comment_href]}\"><span class=w_comment_cnt>{$list[$i][comment_cnt]}</a>";

        // if ($list[$i]['link']['count']) { echo "[{$list[$i]['link']['count']}]"; }
        // if ($list[$i]['file']['count']) { echo "<{$list[$i]['file']['count']}>"; }

        echo " " . $list[$i][icon_new];
        echo " " . $list[$i][icon_file];
        echo " " . $list[$i][icon_link];
        echo " " . $list[$i][icon_hot];
        echo " " . $list[$i][icon_secret];
        echo $nobr_end;
        ?></td>
    <td width="100" align="center" valign="middle"><font class=w_font><?=$list[$i][name]?></font></td>
<td width="80" align="center" valign="middle"><font class=w_font><?=$list[$i][wr_1]?></font></td>
    <td width="80" align="center" valign="middle"><font class=w_font><?=$list[$i][datetime2]?></font></td>
    <td width="40" align="center" valign="middle"><font class=w_font><?=$list[$i][wr_hit]?></font></td>
<td width="70" align="center" valign="middle"><font class=w_font>&nbsp;<?=$list[$i][wr_2]?></font></td>
</tr>
<tr>
    <td colspan="<?=$colspan?>" height="1" background="<?=$board_skin_path?>/img/dot_bg.gif"></td>
</tr>
<? } ?>
<? if (count($list) == 0) { echo "<tr><td height=100 align=center>게시물이 없습니다.</td></tr>"; } ?>
</form>
</table>
<!-- 게시물 리스트 끝 -->

<!-- 페이지 표시 시작 -->
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
    <td height="37" align="center" valign="middle" background="<?=$board_skin_path?>/img/number_line.gif">
        <table width="500" border="0" cellspacing="0" cellpadding="0">
        <tr>
            <td width="100%" align="center">
                <? if ($prev_part_href) { echo "<a href='$prev_part_href'><img src='$board_skin_path/img/btn_search_prev.gif' width=50 height=20 border=0 align=absmiddle title='이전검색'></a>"; } ?>
                <?
                // 기본으로 넘어오는 페이지를 아래와 같이 변환하여 이미지로도 출력할 수 있습니다.
                //echo $write_pages;
                $write_pages = str_replace("처음", "<img src='$board_skin_path/img/begin.gif' border='0' align='absmiddle' title='처음'>", $write_pages);
                $write_pages = str_replace("이전", "<img src='$board_skin_path/img/prev.gif' border='0' align='absmiddle' title='이전'>", $write_pages);
                $write_pages = str_replace("다음", "<img src='$board_skin_path/img/next.gif' border='0' align='absmiddle' title='다음'>", $write_pages);
                $write_pages = str_replace("맨끝", "<img src='$board_skin_path/img/end.gif' border='0' align='absmiddle' title='맨끝'>", $write_pages);
                $write_pages = preg_replace("/<span>([0-9]*)<\/span>/", "<font style=\"font-family:돋움; font-size:9pt; color:#797979\">$1</font>", $write_pages);
                $write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<font style=\"font-family:돋움; font-size:9pt; color:orange;\">$1</font>", $write_pages);
                ?>
                <strong><?=$write_pages?></strong>
                <? if ($next_part_href) { echo "<a href='$next_part_href'><img src='$board_skin_path/img/btn_search_next.gif' width=50 height=20 border=0 align=absmiddle title='다음검색'></a>"; } ?>
            </td>
        </tr>
        </table></td>
</tr>
</table>
<!-- 페이지 표시 끝 -->

<table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr align="left" valign="middle">
        <td width="50%" height="40">
            <? if ($list_href) { ?><a href="<?=$list_href?>"><img src="<?=$board_skin_path?>/img/btn_list.gif" border="0" align="absmiddle"></a><? } ?>
            <? if ($write_href) { ?><a href="<?=$write_href?>"><img src="<?=$board_skin_path?>/img/btn_write.gif" border="0" align="absmiddle"></a><? } ?>
            <? if ($is_checkbox) { ?>
                <a href="javascript:select_delete();"><img src="<?=$board_skin_path?>/img/btn_select_delete.gif" border="0" align="absmiddle"></a>
                <a href="javascript:select_copy('copy');"><img src="<?=$board_skin_path?>/img/btn_select_copy.gif" border="0" align="absmiddle"></a>
                <a href="javascript:select_copy('move');"><img src="<?=$board_skin_path?>/img/btn_select_move.gif" border="0" align="absmiddle"></a>
            <? } ?>
        </td>
        <form name=fsearch method=get>
        <input type=hidden name=bo_table value="<?=$bo_table?>">
        <input type=hidden name=sca      value="<?=$sca?>">
        <td width="50%" align="right">
            <select name=sfl>
                <!-- DB에 상당한 부하가 걸리므로 사용을 추천하지 않음 <option value='wr_subject+wr_content+wc_content'>제목+내용+코멘트</option> -->
                <option value='wr_subject'>제목</option>
                <option value='wr_content'>내용</option>
                <option value='mb_id'>회원아이디</option>
                <option value='wr_name'>이름</option>
                <!-- 코멘트도 같이 검색할 경우에 사용합니다. (속도가 느려짐)
                <option value='b.wc_content'>코멘트</option>
                <option value='a.mb_id+b.mb_id'>회원아이디2</option>
                <option value='a.wr_name+b.wc_name'>이름2</option> -->
            </select>
            <INPUT maxLength=15 size=10 name=stx itemname="검색어" required value="<?=$stx?>">
            <SELECT name=sop>
                <OPTION value=and>And</OPTION>
                <OPTION value=or>Or</OPTION>
            </SELECT>
        </td>
        <td width="10%" align="center"><INPUT type=image width="53" height="18" src="<?=$board_skin_path?>/img/search_btn.gif" border=0></td>
        </form>
    </tr>
</table>

</td></tr></table>

<script language="JavaScript">
if ("<?=$sca?>") document.fcategory.sca.value = "<?=$sca?>";
if ("<?=$stx?>") {
    document.fsearch.sfl.value = "<?=$sfl?>";
    document.fsearch.sop.value = "<?=$sop?>";
}
</script>

<? if ($is_checkbox) { ?>
<script language="JavaScript">
function all_checked(sw)
{
    var f = document.fboardlist;

    for (var i=0; i<f.length; i++) {
        if (f.elements[i].name == "chk_wr_id[]")
            f.elements[i].checked = sw;
    }
}

function check_confirm(str)
{
    var f = document.fboardlist;
    var chk_count = 0;

    for (var i=0; i<f.length; i++) {
        if (f.elements[i].name == "chk_wr_id[]" && f.elements[i].checked)
            chk_count++;
    }

    if (!chk_count) {
        alert(str + "할 게시물을 하나 이상 선택하세요.");
        return false;
    }
    return true;
}

// 선택한 게시물 삭제
function select_delete()
{
    var f = document.fboardlist;

    str = "삭제";
    if (!check_confirm(str))
        return;

    if (!confirm("선택한 게시물을 정말 "+str+" 하시겠습니까?\n\n한번 "+str+"한 자료는 복구할 수 없습니다"))
        return;

    f.action = "./delete_all.php";
    f.submit();
}

// 선택한 게시물 복사 및 이동
function select_copy(sw)
{
    var f = document.fboardlist;

    if (sw == "copy")
        str = "복사";
    else
        str = "이동";
                     
    if (!check_confirm(str))
        return;

    var sub_win = window.open("", "move", "left=50, top=50, width=396, height=550, scrollbars=1");

    f.sw.value = sw;
    f.target = "move";
    f.action = "./move.php";
    f.submit();
}
</script>
<? } ?>

그냥 표아래쪽에 위에있는 시간이 합산만 되면 되거든요...ㅠㅠ
조금만 도와주시면 정말 감사하겠습니다..
엑스엠엘님.. 죄송하지만.. 좀더 자세히좀 써주시면 안될까요??
제가 실력이 좀 많이 모자랍니다.
지금 아직도 저녁은 고사하고 퇴근도 못하고 있습니당.....ㅠㅠ
청춘불안정님, 엑스엠엘님 두분다 정말 감사드립니다..
헌데.. 청춘불안정님이 알려주신대로 하니까 113이라는 숫자가 나옵니다.
어떻게 된걸까요?? ㅠㅠ
제가 무식해서 진짜 죄송합니다..
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

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