민우주님 질문요ㅡㅡㅋ.업로드된 이미지 싸이트 백그라운드로. > 그누4 질문답변

그누4 질문답변

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

민우주님 질문요ㅡㅡㅋ.업로드된 이미지 싸이트 백그라운드로. 정보

민우주님 질문요ㅡㅡㅋ.업로드된 이미지 싸이트 백그라운드로.

본문

흐흐흐 ~.~; 
우주님의 포인트를 7777점이나 뺏어 버려서 지송합니다.
그래서 궁금한게 있어서...
이건 list.skin.php 입니다.
한개의 게시물에 여러개의 이미지를 업로드하면
그중에 1개가 랜덤으로 선택되어서 리스트 됩니다.
이 게시물에 마우스를 올리면
싸이트 전체의 background 로 됩니다.
테그가 좀 세이 스럽나요? 그렇다면ㅜㅜ.
현재는 배경이미지가 화면의 `우측상단` 으로  되는데
이걸 `좌측상단` 으로 보여지게 하려면 어떻게 하는지
좀 갈차주세요.
휴~ 벌써 3일째 고생하고 있어요ㅠㅠ
최고포인트 쏠께요...
모르시면 
제 마~음대로 `답변채택` 합니다.
으흐흐~~ㅋ
그럼 오늘도 즐거운데이 되세요.ㅡㅡㅋ
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
// 선택옵션으로 인해 셀합치기가 가변적으로 변함
$colspan = 5;
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>
?>
<!-- 게시판 목록 시작 -->
<table width="<?=$width?>" align=center cellpadding=0 cellspacing=0><tr><td>
<!-- 분류 셀렉트 박스, 게시물 몇건, 관리자화면 링크 -->
<table width="100%" cellspacing="0" cellpadding="0">
<tr height="25">
    <? if ($is_category) { ?><form name="fcategory" method="get"><td width="50%"><select name=sca onchange="location='<?=$category_location?>'+this.value;"><option value=''>전체</option><?=$category_option?></select></td></form><? } ?>
    <td align="right">
        게시물 <?=number_format($total_count)?>건
        <? if ($rss_href) { ?><a href='<?=$rss_href?>'><img src='<?=$board_skin_path?>/img/btn_rss.gif' border=0 align=absmiddle></a><?}?>
        <? 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>
<tr><td height=5></td></tr>
</table>
<!-- 제목 -->
<form name="fboardlist" method="post" style="margin:0px;">
<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="">

<table width=100% cellpadding=0 cellspacing=0>
<tr><td colspan=<?=$colspan?> height=2 bgcolor=#B0ADF5></td></tr>
<tr bgcolor=#F8F8F9 height=30 align=center>
    <td width=50>번호</td>
    <? if ($is_category) { ?><td width=70>분류</td><?}?>
    <? if ($is_checkbox) { ?><td width=40><INPUT onclick="if (this.checked) all_checked(true); else all_checked(false);" type=checkbox></td><?}?>
    <td>제목</td>
    <td width=40><?=subject_sort_link('wr_hit', $qstr2, 1)?>조회</a></td>
    <td width=40><?=subject_sort_link('wr_datetime', $qstr2, 1)?>날짜</a></td>
    <? if ($is_good) { ?><td width=40><?=subject_sort_link('wr_good', $qstr2, 1)?>추천</a></td><?}?>
    <? if ($is_nogood) { ?><td width=40><?=subject_sort_link('wr_nogood', $qstr2, 1)?>비추천</a></td><?}?>
    <td width=110>글쓴이</td>
</tr>
<tr><td colspan=<?=$colspan?> height=1 bgcolor=#B0ADF5></td></tr>
<!-- 목록 -->
<? for ($i=0; $i<count($list); $i++) { ?>
<tr height=28 align=center onmouseover='document.body.background=upfile_back<?=$i?>.value;
     document.body.style.cssText="background-position: right top;"
     +"background-attachment: fixed; background-repeat:no-repeat";'>
    <!--
    <td>
        <?
        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 color='#2C8CB9'><strong>{$list[$i][num]}</strong>";
        else
            echo "{$list[$i][num]}";
        ?></td>
    -->
   
 <td>        
  <? 
     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 color='#2C8CB9'><strong>{$list[$i][num]}</strong>";
      else
      echo "{$list[$i][num]}";       
    ?>
    <?
    #####################################################
    // 업로드된 이미지를 리스트에서 랜덤출력 --> 이미지를 전체 background로.
    echo"<br>";    
    $img_width=75;
    $rand_arr=array();reset($rand_arr); $rand_img_num="";
    for($fi=0, $fi_pic=0, $m=0; $m < $list[$i][file][count]; $m++){    
      $f_type=""; $f_style=""; $f_path=""; $f_file ="";         
      $f_type=$list[$i][file][$m][image_type];
      if($f_type=='1' || $f_type=='2' || $f_type=='3'
      ||$f_type=='6' || $f_type=='7') $f_style="img";
      else if($f_type=='4') $f_style="movie_img";//쭉..형태추가
     
   $f_file = urlencode($list[$i][file][$m][file]);
      $f_path="{$list[$i][file][$m][path]}";
      $f_file = urlencode($f_file);
    
   if(preg_match("/\.(jp[e]?g|tif|bmp|gif|png)$/i","$f_file")
       && file_exists("$f_path/$f_file")&& $f_style=="img")
   { //이미지면
     //여기서 배열을 만들고 아래에서 랜덤으로 한다.
     $fi++;
     $rand_arr[$fi]=$m;
   }  
    }//for  
    #####################################################
    $rand_img_num = mt_rand(1,count($rand_arr));
    // 요놈이다. echo"<font color='red'>{$rand_arr[$rand_img_num]}</font>";  
    // 그럼 그림이 있을때만 & 뽑아질경우만...물론 있으니까 뽑히겠지만..
    if($fi !=0 && $rand_img_num !=''){ //_
      echo"<a href='{$list[$i][href]}'>";
      $f_file = urlencode($list[$i][file][$rand_arr[$rand_img_num]][file]);
      $f_path="{$list[$i][file][$rand_arr[$rand_img_num]][path]}";
      $f_file = urlencode($f_file);
      echo"<img src='$f_path/$f_file' width='$img_width' border='0'><br>";
      ?>
     <!--요부분이 이미지면 백그라운드 처리 --> 
     <input type="hidden" size='0' value="<?=$f_path?>/<?=$f_file?>" name="upfile_back<?=$i?>">       
 <?}//랜덤 이미지가 있다면 -끝-
  else
  {echo "<img src=\"$board_skin_path/img/no_image.gif\" width=82 height=66 border=0>";?>
   <input type="hidden" size='0' value="<?=$f_path?>/<?=$f_file?>" name="upfile_back<?=$i?>">
  <? 
  }
   echo "</a>";
   ####################################2006.10.28 dalsoo######
   ?></td>

    <? if ($is_category) { ?><td><a href="<?=$list[$i][ca_name_href]?>"><font color=gray><span class=small><?=$list[$i][ca_name]?></span></font></a></td><? } ?>
    <? if ($is_checkbox) { ?><td><input type=checkbox name=chk_wr_id[] value="<?=$list[$i][wr_id]?>"></td><? } ?>
    <td align=left style='word-break:break-all;'>
        <?
        echo $nobr_begin;
        echo $list[$i][reply];
        echo $list[$i][icon_reply];
        echo "<a href='{$list[$i][href]}'>";
        if ($list[$i][is_notice])
            echo "<font color='#FF6600'><strong>{$list[$i][subject]}</strong></font>";
        else
        {
            $style1 = $style2 = "";
            if ($list[$i][icon_new]) // 최신글은 검정
                $style1 = "color:#112222;";
            if (!$list[$i][comment_cnt]) // 코멘트 없는것만 굵게
                $style2 = "font-weight:bold;";
            echo "<span style='$style1 $style2'>{$list[$i][subject]}</span>";
        }
        echo "</a>";
        if ($list[$i][comment_cnt])
            echo " <a href=\"{$list[$i][comment_href]}\"><span style='font-size:7pt;'>{$list[$i][comment_cnt]}</span></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><?=$list[$i][wr_hit]?></td>
    <td><?=$list[$i][datetime2]?></td>
    <? if ($is_good) { ?><td align="center"><?=$list[$i][wr_good]?></td><? } ?>
    <? if ($is_nogood) { ?><td align="center"><?=$list[$i][wr_nogood]?></td><? } ?>
    <td><?=$list[$i][name]?></td>
</tr>
<tr><td colspan=<?=$colspan?> height=1 bgcolor=#E7E7E7></td></tr>
<?}?>
<? if (count($list) == 0) { echo "<tr><td colspan='$colspan' height=100 align=center>게시물이 없습니다.</td></tr>"; } ?>
<tr><td colspan=<?=$colspan?> bgcolor=#5C86AD height=1>
</table>
</form>
<!-- 페이지 -->
<table width="100%" cellspacing="0" cellpadding="0">
<tr>
    <td width="100%" align="center" height=30 valign=bottom>
        <? if ($prev_part_href) { echo "<a href='$prev_part_href'><img src='$board_skin_path/img/btn_search_prev.gif' 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>/", "<b><font style=\"font-family:돋움; font-size:9pt; color:#797979\">$1</font></b>", $write_pages);
        $write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<b><font style=\"font-family:돋움; font-size:9pt; color:orange;\">$1</font></b>", $write_pages);
        ?>
        <?=$write_pages?>
        <? if ($next_part_href) { echo "<a href='$next_part_href'><img src='$board_skin_path/img/btn_search_next.gif' border=0 align=absmiddle title='다음검색'></a>"; } ?>
    </td>
</tr>
</table>
<!-- 버튼 링크 -->
<form name=fsearch method=get style="margin:0px;">
<input type=hidden name=bo_table value="<?=$bo_table?>">
<input type=hidden name=sca      value="<?=$sca?>">
<table width=100% cellpadding=0 cellspacing=0>
<tr>
    <td width="50%" height="40">
        <? if ($list_href) { ?><a href="<?=$list_href?>"><img src="<?=$board_skin_path?>/img/btn_list.gif" border="0"></a><? } ?>
        <? if ($write_href) { ?><a href="<?=$write_href?>"><img src="<?=$board_skin_path?>/img/btn_write.gif" border="0"></a><? } ?>
        <? if ($is_checkbox) { ?>
            <a href="javascript:select_delete();"><img src="<?=$board_skin_path?>/img/btn_select_delete.gif" border="0"></a>
            <a href="javascript:select_copy('copy');"><img src="<?=$board_skin_path?>/img/btn_select_copy.gif" border="0"></a>
            <a href="javascript:select_copy('move');"><img src="<?=$board_skin_path?>/img/btn_select_move.gif" border="0"></a>
        <? } ?>
    </td>
    <td width="50%" align="right">
        <select name=sfl>
            <option value='wr_subject||wr_content'>제목+내용</option>
            <option value='wr_subject'>제목</option>
            <option value='wr_content'>내용</option>
            <option value='mb_id'>회원아이디</option>
            <option value='wr_name'>이름</option>
        </select><input name=stx maxlength=15 size=10 itemname="검색어" required value="<?=$stx?>"><select name=sop>
            <option value=and>and</option>
            <option value=or>or</option>
        </select>
        <input type=image src="<?=$board_skin_path?>/img/search_btn.gif" border=0 align=absmiddle></td>
</tr>
</table>
</form>
</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>
<? } ?>
<!-- 게시판 목록 끝 -->

댓글 전체

나두 몰러유  좀 알려주삼....ㅠ.ㅠ

그런데 이넘은 알아유...호호호~~**

right top

뭐 left center right 하고 top middle(?) bottom하고 궁합만 잘 맞추면 되는지 저는 절대로 모릅니다....ㅠ.ㅠ

아시는 분 아래 댓글로 좀 알려주세요......

행복한 한 주 되십시오....10월 마무리 잘 하시고용...

내일이면...

지금도 기억하고 있어요....10월의 마지막 밤을......룰루랄라~~~~!
공부하세요~!! 퍽~***

CSS HTML Validator가 뻑하면 비표준이라고 지적하는 간단한 사항들..

align="absmiddle" => vertical-align="middle" NN계열에서 이미지만 적용됨

position:relative;left:0;top:0;padding:0;margin:0; 등에서 값이 `0`이 아니면 반드시 `px`나 `em`처럼 단위 표시해야 한다.


레퍼런스에서..

position

속성값
 값 설명 IE NN
static
 특정 좌표를 지정하지 않습니다. 일반 위치에 표시됩다. 4.0 4.0
relative
 부모 요소를 기준으로 상태 위치로 지정합니다. 4.0 4.0
absolute
 절대 위치로 지정합니다. 웹 브라우저의 왼쪽 위를 기준으로 합니다. 4.0 4.0
fixed
 static과 비슷하나 스크롤해도 위치가 고정되지 않습니다. - 7.0

예제
IMG { position:absolute;
      left:200;
      top:100  }

인터넷 익스플로러 4
넷스케이프 4
CSS 2

참고
position 속성을 absolute로 지정하여 절대 위치를 사용할 경우 top 또는 left 속성을 반드시 명시해야 합니다.

그나저나 기막힌 편법증여 방법을 개발하셨군요. 호호호~~***
증여세 50% 정도는 떼야 한다고 봅니다.

그나저나 일정기간 동안 '답변채택'을 하지 않은 경우라면,

최초의 코멘트를 강제적으로 채택시키는 거시기도~*^^*
헉... 이건 ...
글쎄요..  저가 질문했던 유형보다 더많은 기술이 필요한듯하네요..;
저는 워낙 자바맹인 이라서 이런 질문은 저도 잘 모르겠슴다... ㅜ.ㅜ

혹시 스타일이나 그누 자바쪽에서 충돌이 일어나 우측상단으로 돼는건 아닐까요?...
전혀 딴이야기 이지만 저가 제로였던 시절 충돌이 일어나서 애먹었던적 있었어요...
전체 4 |RSS

회원로그인

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