리스트에서 selec로 된 카테고리(분류)를 한줄로 처리하도록.... > 그누3 팁자료실

그누3 팁자료실

리스트에서 selec로 된 카테고리(분류)를 한줄로 처리하도록.... 정보

그누호환 리스트에서 selec로 된 카테고리(분류)를 한줄로 처리하도록....

본문

1. lib/developer.lib.php에 다음 내용을 추가한다.
  function get_category_list($table,$loc)
  {
    global $cfg, $stext;

    $sql = " select * from {$table}_cat order by ca_id ";
    $result = sql_query($sql);

    if(!$stext){
        $str = "<b>[ <a href=$loc>전체 </a> ]</b> ";
    } else {
        $str = "[ <a href=$loc>전체</a> ] ";
    }
    while ($row = mysql_fetch_array($result)) {
        if($stext == $row[ca_id]) $str .= "<b>";
        $str .= " [ <a href=$loc$row[ca_id]>".get_category_name($table,$row[ca_id])."</a> ] ";
        if($stext == $row[ca_id]) $str .= "</b>";
    }
    mysql_free_result($result);
   
    return $str;
  }
2. 게시판 스킨 디렉토리에있는 gblist.skin.php을 다음과 같이 수정한다.
아래의 수정전 내역을 수정후와 같이 바꾸셔도되고,
수정전 파일의 앞뒤에 html 주석을 처리를 하고 수정후를 추가하셔도 됩니다.
수정전 :
<!-- // html 주석으로 처리하고자 할경우
        <? if ($is_category) { ?>
            <select name=ca_id onchange="location='<?=$category_location?>'+this.value;" class=select>
            <option value=''>전체</option>
            <?=$category_option?>
            </select>
        <? } ?>
        // html 주석으로 처리하고자 할경우 -->
수정후 :
<?
if ($is_category) {
echo "<input type=hidden name=ca_id>";
echo get_category_list("$cfg[write_table_prefix]$bo_table",$category_location);
}
?>
추천
2
  • 복사

댓글 전체

root님~~!!
몇일을 머리굴리다 않되어서 여쭈어 보는데요~~~^^;;
지금 이부분에서 카테고리별로 최신글을 뿌려줄수는 없나요~~~?

일반      질문        답변          알림      <-------카테고리이름
*기냥      *묻자      *대답          *참고    <--------카테고리별 최신글
*테스트    *물음      *또대답      *이것

이런씩으로 말입니다...
이것때문에 몇일을 씨름 하고 있거든요~~~쩝~~~
get_category_list에서
1. 카테고리 내용의 font color를 수정하고자 할경우는 다음처럼 하세요.

function get_category_list($table,$loc)
{
    global $cfg, $stext;

    $sql = " select * from {$table}_cat order by ca_id ";
    $result = sql_query($sql);

    if(!$stext){
        $str = "<b>[ <a href=$loc><font color=0099cc>전체</font></a> ]</b> ";
    } else {
        $str = "[ <a href=$loc><font color=0099cc>전체</font></a> ] ";
    }
    while ($row = mysql_fetch_array($result)) {
        if($stext == $row[ca_id]) $str .= "<b>";
        $str .= "&nbsp;&nbsp;[ <a href=$loc$row[ca_id]><font color=0099cc>".get_category_name($table
,$row[ca_id])."</font></a> ] ";
        if($stext == $row[ca_id]) $str .= "</b>";
    }
    mysql_free_result($result);
   
    return $str;
}
?>

2. 그리고 카테고리 항목과 항목 사이에 공백을 추가 하고자 할경우 위 1번소스의 다음 부분을 수정
  => "$str. = "과  "[ <a href" 사이에 &nbsp;(공백문자)를 추가하시면 됩니다.
 $str .= "&nbsp;&nbsp;[ <a href=$loc$row[ca_id]><font color=0099cc>".get_category_name($table
,$row[ca_id])."</font></a> ] ";
blink를 적용한 get_category_list().............................

function get_category_list($table,$loc)
 {
  global $cfg, $stext;

  $sql = " select * from {$table}_cat order by ca_id ";
  $result = sql_query($sql);

    if(!$stext){
        $str = "<b><blink>[</blink> <a href=$loc> &#192;&#252;&#195;¼ </a> <blink>]</blink></b> ";
    } else {
        $str = "[ <a href=$loc> &#192;&#252;&#195;¼ </a> ] ";
    }
    while ($row = mysql_fetch_array($result)) {
        if($stext == $row[ca_id]) $str .= " <b><blink>[</blink> ";
        else                      $str .= " [ ";
        $str .= " <a href=$loc$row[ca_id]>".get_category_name($table,$row[ca_id])."</a> ";
        if($stext == $row[ca_id]) $str .= " <blink>]</blink></b> ";
        else                      $str .= " ] ";
    }
    mysql_free_result($result);
 
  return $str;
 }
위의 카테고리(분류)가 넘 단조롭다면 깜빡거리는 기능을 부여하는것도 좋겠죠
깜빡거리게 하고 싶은 곳에을 <blink></blink>로 감쏴 주시면 됩니다.
선택된 전체가 깜빡이게 하고 시퍼면
수정전 : $str = "<b>[ <a href=$loc>전체 </a> ]</b> ";
수정후 : $str = "<b><blink>[</blink> <a href=$loc>전체 </a> <blink>]</blink></b> ";

이렇게만 하면 네스케이프나 모질라에서만 깜빡거리겠죠...

익스에서도 깜빡이게 하고시퍼면... 스킨 gblist.skin.php위에 다음을 추가해주세요.
<?
/*******************************************************/
// 다음의 스크립터는 <blink></blink> 처리를 위한것이다.
// 350은 깜박이는 속도. (높은 수일수록 깜박이는 속도 느림)
/*******************************************************/
print "<script language=JavaScript>\n";
print " function doBlink() {\n";
print " var blink = document.all.tags(\"BLINK\")\n";
print " for (var i=0; i < blink.length; i++)\n";
print " blink[i].style.visibility = blink[i].style.visibility == \"\" ? \"hidden\" : \"\"\n";
print " }\n";
print " function startBlink() {\n";
print " if (document.all)\n";
print " setInterval(\"doBlink()\",350)\n";
print " }\n";
print " window.onload = startBlink;\n";
print "</script>\n";
?>
© SIRSOFT
현재 페이지 제일 처음으로