경매리스트에도 남음 시간 표현하기... > 그누3 팁자료실

그누3 팁자료실

경매리스트에도 남음 시간 표현하기... 정보

일반 경매리스트에도 남음 시간 표현하기...

본문

초미님을 위해......^^

아래의 소스는 auction.php의 내용입니다....그대로 복사해서 소스 교체 하신 후
업로드 해서 확인하신 다음 원하시는데로 바꾸시길 바랍니다....
꼭 원본은 백업을 하시길 바라고.....

★★★★★★★★★  소스 나갑니다...  auction.php 입니다....★★★★★★★★★

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

define("_DOCTYPE_", "DESIGN");

include "./$cfg[shop_dir]/shop.lib.php";

$html_title = "경매";

echo navigation($html_title);

$base_qstr = "doc=$doc";

if ($is_admin == 'default') {
    echo "[<a href='./?doc=$cfg[shop_dir]/admin/auctionlist.php'>관리</a>]";
}
?>

<table width=100% border=0 cellpadding=3 cellspacing=1 class=tablebg>
<colgroup width=40>
<colgroup width=''>
<colgroup width=160>
<colgroup width=70>
<colgroup width=70>
<colgroup width=50>
<tr class='subject subjectbg' height=30 align=center>
<td><?=subject_sort_link('au_id', $base_qstr)?>번호</a></td>
<td><?=subject_sort_link('au_subject', $base_qstr)?>제목</a></td>
<td><?=subject_sort_link('au_fr_datetime', $base_qstr)?>시작일</a> / <?=subject_sort_link('au_to_datetime', $base_qstr)?>마감일</a></td>
<td>현재가</td>
<td><?=subject_sort_link('cnt', $base_qstr)?>입찰수</a></td>
<td>상태</td>
</tr>

<?
if (!$ssort) {
    $ssort = "au_id";
    $sorder = "desc";
}

$from = " $cfg[table_auction] a
          left join $cfg[table_tbidder] b on (a.au_id = b.au_id) ";

$query = new listQuery();
$query->select(" a.au_id, a.au_subject, a.au_fr_datetime, a.au_to_datetime, a.au_sijakga, a.au_juksiga, a.au_qty ");
$query->from($from);
$query->where($sselect, $stext, $condition);
$query->order($ssort, $sorder);
$query->group(" count(b.bi_id) as cnt, max(b.bi_ipchalga) as hyunjaega, sum(b.bi_qty) as sum_qty ");
$query->limit($cfg[list_rows], $page);
$sql = $query->result();
$result = sql_query($sql);
for ($i=0; $row=mysql_fetch_array($result); $i++) {

    $status = get_auction_status($row);

    $au_subject = conv_subject($row[au_subject], 100, "…");

// 낙찰 수량을 얻는다
$sum_nakchal_qty = get_nakchal_qty($row[au_id]);

// 입찰이 없다면 시작가가 현재가
    if ($row[hyunjaega]) {
        $hyunjaega = $row[hyunjaega];
    } else {
        $hyunjaega = $row[au_sijakga];
    }

// 모두 낙찰되었다면 종료
if ($row[au_juksiga] && $sum_nakchal_qty == $row[au_qty]) {
    $is_end = true;
} else if ($now > $row[au_to_datetime]) {
    $is_end = true;
}

    $comment_cnt = "";
    $sql2 = " select count(*) from $cfg[table_tcomment]
              where au_id = '$row[au_id]' ";
    $row2 = sql_fetch($sql2);
    if ($row2[0]) {
        $comment_cnt = " <span style='font-size:8pt;'>($row2[0])</span>";
    }

    $list = ($i%2);
    echo "<tr class='list$list ht lh' align=center>";
    echo "<td>$row[au_id]</td>";
    echo "<td align=left>&nbsp;<a href='./?doc=$cfg[shop_dir]/auctiondetail.php&au_id=$row[au_id]'>$au_subject</a>{$comment_cnt}</td>";
    echo "<td>$row[au_fr_datetime] (".get_yoil($row[au_fr_datetime]).")<br>";
    echo "$row[au_to_datetime] (".get_yoil($row[au_to_datetime]).")</td>";
    echo "<td align=right>".nf($hyunjaega)." 원&nbsp;</td>";
    echo "<td>".nf($row[cnt])."&nbsp;</td>";
?>
<script language="JavaScript">
    <?
    $tgap  = strtotime($row[au_to_datetime]) - time();
    $tday  = (int)($tgap / 86400);
    $thour = (int)(($tgap - ($tday * 86400)) / 3600);
    $tmin  = (int)(($tgap - ($tday * 86400 + $thour * 3600)) / 60);
    $tsec  = (int)($tgap - ($tday * 86400 + $thour * 3600 + $tmin * 60));
    ?>

    var tday  = <?=$tday?>;
    var thour = <?=$thour?>;
    var tmin  = <?=$tmin?>;
    var tsec  = <?=$tsec?>;

    function runtimer()
    {
        var s = "";

        if (tday > 0)
            s += tday + "일";

        if (thour > 0 || s != "") {
            if (s != "") s += " ";
            s += thour + "시간";
        }

        if (tmin > 0 || s != "") {
            if (s != "") s += " ";
            s += tmin + "분";
        }

        if (tsec > 0 || s != "") {
            if (s != "") s += " ";
            s += tsec + "초";
        }

        if (s == "") {
            document.fdetail.timer.value = "경매가 마감 되었습니다";
            return;
        }

        document.fdetail.timer.value = s;

        tsec--;
        if (tsec < 0) {
            tsec = 59;
            tmin--;
        }

        if (tmin < 0) {
            tmin = 59;
            thour--;
        }

        if (thour < 0) {
            thour = 23;
            tday--;
        }

        window.setTimeout('runtimer()',1000);
    }
</script>
<form name=fdetail>
<td>
        <? if ($is_end) { ?>
            <font color=crimson><b>경매 마감</b></font>
        <? } else { ?>
            <input type="text" name="timer" style='background-color: #ffffff ; border-style:none 0px; color:crimson; font-weight:bold;height:16; font-size:12; border-width: 0px;' readonly>
            <script> runtimer(); </script>
        <? } ?>
</td>
</form>
<?
echo "</tr>";
}

if ($i == 0) {
    echo "<tr><td colspan=9 align=center height=100 class='content contentbg'>자료가 없습니다.</td></tr>";
}

echo "</table>";

$pagelist = get_paging($default[de_write_pages], $query->page, $query->total_page, $rows, "./?$base_qstr&$shop_qstr&page=");
if ($pagelist) {
    echo "<table width=100% cellpadding=3 cellspacing=1><tr><td align=right>$pagelist</td></tr></table>\n";
}

if ($stext) {
    echo "<script>document.fsearch.sselect.value = '$sselect';</script>";
}
?>

<table width=100% cellpadding=3 cellspacing=1>
<form name=fsearch method=get action='./'>
<input type=hidden name=doc value='<?=$doc?>'>
<tr>
    <td align=center>
        <select name=sselect>
            <option value='au_subject'>제목</option>
            <option value='au_id'>번호</option>
        </select>
        <input type=text name=stext class=input required itemname='검색어' value='<?=$stext?>'>
        <input type=submit value='검색'></td>
</tr>
</form>
</table>

<?
include "./$cfg[shop_dir]/admin/tail.php";
?>

[이 게시물은 관리자님에 의해 2003-11-25 11:46:04 그샵팁텍(으)로 부터 이동됨]
추천
0
  • 복사

댓글 전체

박갑성님 문제 생겼습니다. 처음에 경매 제품이 하나였을땐 이상없었는데...경매 물건이 2개이상이 되면 시간이 처음꺼는 나오는데 멈춰있고 나중꺼는 안뜨고 밑에
document.fdetail.timer 에서 오류메세지가 나옵니다. 아마도 경매번호때문에 오류가 발생한거 같은데요....맞나요? 에공...첨엔 좋았는데...제품을 계속 업해보니 그런에러가 나오네염,,,,쩝...다시 오늘 밤 고민 해야 겠어용...전 이만 고민하러 갑니다. 언릉 해결 됐으면 좋겠당....ㅠ..ㅠ
박갑성님 정말 감사합니다. ^^* 역시...뭔가 틀리시군요... 저도 애써봤는데...저도 비슷하게 했었는데 순서가 엉켜서 변수값을 불러들이지 못해서 계속 시간이 안떴었는데 이렇게 해결해 주시니 정말 감사드려용.... 아!~~~정말 좋다...^^*
© SIRSOFT
현재 페이지 제일 처음으로