BLOG main image
분류 전체보기 (65)
JSP (6)
Android (1)
ASP.NET (0)
MSSQL (4)
PHP (18)
제로보드 XE (2)
그누보드 (9)
Linux (3)
ASP (11)
오픈 API (1)
HTML (2)
JavaScript (0)
Windows Programming (8)
컴퓨터교양 (14)
객체 지향 (0)
리뷰 및 생각 (0)
Visitors up to today!
Today hit, Yesterday hit
daisy rss
tistory 티스토리 가입하기!
'PHP/그누보드'에 해당되는 글 9건
2015. 6. 25. 21:20

* 이슈 요약

윈도우에서 설치시 경로문제가 발생합니다.

해결방법
config.php 에서
define('G5_DOMAIN', ''); 이 빈칸에
define('G5_DOMAIN', 'http://localhost'); 이렇게 도메인을 적어준다.

또는 로컬 말고 외부에서 접근하기 위해서는 아래와 같이 적어준다.
define('G5_DOMAIN', 'http://192.168.0.3');                     내부 네트워크
define('G5_DOMAIN', 'http://211.xxx.xxx.xxx');               외부 네트워크
define('G5_DOMAIN', 'http://denisoh.tistory.com);          도메인(외부 네트워크 포워딩)
define('G5_DOMAIN', 'http://denisoh.tistory.com:8080);   도메인/포트
(외부 네트워크 포워딩)




1. 그누보드5 다운로드



먼저 sir.co.kr 에서 그누보드5를 다운로드 받습니다.


최신 글로 들어갑니다.


첨부파일이 두개 보이는데요, 위에 것은 풀버젼이고, 아래 것은 패치 파일만 묶어 놓은 것입니다.
원하는 위치에 다운로드 받고, 압축을 푸세요.


전 C:\g5\gnuboard5.0.37.tar 에 풀었습니다.

2. IIS 세팅

이제 IIS 세팅에 들어가야 합니다.
IIS + PHP 를 아직 설치하지 않았다면 아래 게시물을 참고 하세요.
http://denisoh.tistory.com/entry/IIS-75에-PHP-5X-설치하기-IIS


기본설정을 누르시고,


실제경로에 C:\g5\gnuboard5.0.37.tar 을 입력하세요.

3. 실행 / 경로문제 해결


브라우저를 열고 http://localhost/ 로 들어갑니다.
이제까지 잘 되는 것 처럼 보이지만, 윈도우즈에서 그누보드5를 설치하게 되면 경로 문제에 부딧히게 됩니다.
이 문제를 같이 해결해 보아요.
그누보드5 설치하기 눌러보세요.





자, 경로문제가 발생했어요.


그누보드5 루트에 있는 config.php를 여세요.


원래는 define('G5_DOMAIN', ''); 이렇게 비어 있는데요,
define('G5_DOMAIN', 'http://localhost'); 처럼 빈칸에 도메인 이름을 입력해주시면 되요. 간단하죠?

4. 설치

이제 다시 http://localhost/ 로 들어갑니다.


설치하기를 누르면


짠~ 경로문제가 해결되고, 올바르게 설치가 진행됩니다.

data 폴더를 만들어 주라네요. 새폴더 만들기로 그냥 만들어 줍니다.

다시 설치화면으로 돌아가서 새로고침 하면,

이렇게 다음 화면이 나옵니다. 동의하고 다음을 누릅니다.


DB 정보를 입력해야 하는데요. 입력하기 전에 DB를 생성해 주어야 해요.

5. DB 생성

phpMyAdmin 이라는 MySQL 툴을 이용해서 DB를 생성합니다.


아직 phpMyAdmin 설치하기 블로그를 작성하지 않았어요. 그래서 이건 직접 설치해보세요.


여하튼 g5라는 DB가 생성되었습니다.

다시 그누보드5 설치화면으로 돌아가서

이렇게 입력해 줍니다. 전 귀찮아서 테스트용 암호는 다 1로 해버립니다.
DB 정보는 개인별로 다 다르겠죠? 여튼 다음을 누릅니다.

6. 완료


설치가 완료 되었습니다. 새로운 그누보드5로 이동을 누르세요.


짠~ 설치가 완료 되었습니다.

2014. 4. 4. 12:12

개요
그누보드를 기존서버에서 다른서버로 복사&붙여넣기 한 것처럼 똑같이 이전 시키는 방법입니다.
그누보드는 프로그램소스 + DB 로 구성되어 있습니다. 당연한 말이겠지요.
새로운 서버에 이전하기 위해 새서버에 그누보드를 다시 설치할 필요는 없습니다.
(구라 아닙니다. 믿으세요!)


서버이전
그냥 기존서버에 있는 프로그램소스를 새서버에 복사하고,
(이때 쉘명령으로 압축/FTP전송을 쓰면 간단합니다. putty를 이용하세요.)
http://denisoh.tistory.com/entry/리눅스-쉘-클라이언트-putty
http://denisoh.tistory.com/entry/리눅스-압축하기-압축풀기-디렉토리명-변경
http://denisoh.tistory.com/entry/리눅스-FTP-접속-및-파일전송다운로드

phpMyAdmin을 이용하여,
기존서버에서 DB를 내보내기(옵션은 건드릴 필요 없습니다.) 하여
파일로 다운로드 받은 다음에(파일로 저장에 체크온)
새서버에 그 파일을 Import를 해주면 끝입니다.
단, DB속에 들어가서 내보내기를 시작해야 합니다.(테이블과 데이터가 내보내기 됩니다.)
Import 할 때도 마찬가지로 DB속에 들어가서 Import를 해야 합니다.
왜냐하면 cafe24같은 곳에서 호스팅을 받았다면 DB를 생성 할 수 없기 때문입니다.
DB를 생성 할 수 있는 환경이라면 phpMyAdmin 홈 화면에서 DB 통째로 내보내기/Import 해도 됩니다.

마지막으로 dbconfig.php를 열고 연결정보를 수정해주면 끝입니다.

이렇게 하면 기존서버와 모든게 똑같은 사이트를 얻게 될 것입니다.
(구라 아닙니다. 믿으세요!)


정리
프로그램 소스 복사
DB내보내기/Import (테이블/데이터만)
dbconfig.php 수정
거듭 말하지만 구라 아닙니다. 걍 이렇게만 하면 됩니다. 고민하지 마세요.


주의사항
테이블명에 대문자가 들어가면 게시물이 안나올 수 있습니다.

리눅스는 기본적으로 대소문자를 구별 합니다. mysql 쿼리문에서도 대소문자를 구별 합니다.
phpmyadmin으로 테이블 구조를 눌러보면 대문자를 소문자로 표기하는 것을 볼 수 있는데, 바로 이 부분 때문에 문제가 생깁니다.
그누보드 내부적으로는 대소문자를 구별하여 테이블을 관리하는데,
데이터 이전시 phpmyadmin을 사용하면, 모든 테이블이 소문자로 이전 됩니다.
그래서 없는 테이블 입니다.와 같은 쿼리문 에러가 나타납니다.
이점 참고하시길 바랍니다.

2014. 1. 7. 09:32

        <?
        $m_bo_table = 'news';
        $m_rows = "5";
        $m_subject_len = 20;
        $m_latest_skin_path = "$g4[path]/skin/latest/basic";
       
        $list = array();
       
        $sql = " select * from $g4[board_table] where bo_table = '$m_bo_table'";
        $board = sql_fetch($sql);
       
        //echo "$sql<br />";
       
        $tmp_write_table = $g4['write_prefix'] . $m_bo_table; // 게시판 테이블 전체이름
        //$sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_id desc limit 0, $m_rows ";
        // 위의 코드 보다 속도가 빠름
        $sql = " select * from $tmp_write_table where wr_is_comment = 0 order by wr_num limit 0, $m_rows ";
       
        //echo "$sql<br />";
       
        //explain($sql);
        $result = sql_query($sql);
        for ($i=0; $row = sql_fetch_array($result); $i++)
            $list[$i] = get_list($row, $board, $m_latest_skin_path, $m_subject_len);       
        ?>
       
        <? for ($i=0; $i<count($list); $i++) { ?>
                    <? echo "<img src='$m_latest_skin_path/img/latest_icon.gif' align=absmiddle>"; ?>
       
                   
                    <?
                    // 파일 출력
                    /*
                    for ($j=0; $j<=count($list[$i][file]); $j++) {
                        if ($list[$i][file][$j][view])
                            echo $list[$i][file][$j][view] . "<p>";
                    }
                    */
                    if ($list[$i][file][0][view])
                        echo "<img src='$g4[path]/data/file/$m_bo_table/{$list[$i][file][0][file]}' align='absmiddle' width='100' height='60' />";
                    ?>
                   
                    <?
                    echo $list[$i]['icon_reply'] . " ";
                    echo "<a href='{$list[$i]['href']}'>";
                    if ($list[$i]['is_notice'])
                        echo "<font style='font-family:돋움; font-size:9pt; color:#2C88B9;'><strong>{$list[$i]['subject']}</strong></font>";
                    else
                        echo "<font style='font-family:돋움; font-size:9pt; color:#6A6A6A;'>{$list[$i]['subject']}</font>";
                    echo "</a>";
       
                    if ($list[$i]['comment_cnt'])
                        echo " <a href=\"{$list[$i]['comment_href']}\"><span style='font-family:돋움; font-size:8pt; color:#9A9A9A;'>{$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 "<br />";
                    ?>
                   
        <? } ?>
       
        <? if (count($list) == 0) { ?><tr><td colspan=4 align=center height=50><font color=#6A6A6A>게시물이 없습니다.</a></td></tr><? } ?>

2014. 1. 7. 09:11


            <td height=25><img src='<?=$latest_skin_path?>/img/latest_icon.gif' align=absmiddle>&nbsp;&nbsp;
            <?
            // 파일 출력
            /*
            for ($j=0; $j<=count($list[$i][file]); $j++) {
                if ($list[$i][file][$j][view])
                    echo $list[$i][file][$j][view] . "<p>";
            }
            */
            if ($list[$i][file][0][view])
                echo "<img src='$g4[path]/data/file/$bo_table/{$list[$i][file][0][file]}' align='absmiddle' width='100' height='60' />";
            ?>

2014. 1. 6. 06:20

관리자 > 환경설정 > 기본환경설정
에서 여분필드를 설정 할 수 있다.
왼쪽에는 필드명을 입력하고, 오른쪽에는 값을 입력한다.
image


설정한 정보는 아래 있는 기본환경설정 테이블에 저장된다.
필드명은 cf_1_subj, 값은 cf_1에 저장된다.
image

PHP에서 아래의 코드로 출력해 볼 수 있다.
<?=$config[cf_1_subj]?>
<?=$config[cf_1]?>

2013. 12. 27. 17:03

/bbs/write.php

//--------------------------------------------------------------------------
// 가변 파일
$file_script = "";
$file_length = -1;
// 수정의 경우 파일업로드 필드가 가변적으로 늘어나야 하고 삭제 표시도 해주어야 합니다.
if ($w == "u")
{
    for ($i=0; $i<$file[count]; $i++)
    {
        $row = sql_fetch(" select bf_file, bf_content from $g4[board_file_table] where bo_table = '$bo_table' and wr_id = '$wr_id' and bf_no = '$i' ");
        if ($row[bf_file])
        {
            $file_script .= "add_file(\"<input type='checkbox' name='bf_file_del[$i]' value='1'><a href='{$file[$i][href]}'>{$file[$i][source]}({$file[$i][size]})</a> 파일 삭제";

            if ($file[$i][image_type] != 0)
                $file_script .= "<br /><img src='{$file[$i][href]}' width='250' border='0' />";

            if ($is_file_content)
                //$file_script .= "<br><input type='text' class=ed size=50 name='bf_content[$i]' value='{$row[bf_content]}' title='업로드 이미지 파일에 해당 되는 내용을 입력하세요.'>";
                // 첨부파일설명에서 ' 또는 " 입력되면 오류나는 부분 수정
                $file_script .= "<br><input type='text' class=ed size=50 name='bf_content[$i]' value='".addslashes(get_text($row[bf_content]))."' title='업로드 이미지 파일에 해당 되는 내용을 입력하세요.'>";
            $file_script .= "\");\n";
        }
        else
            $file_script .= "add_file('');\n";
    }
    $file_length = $file[count] - 1;
}

2013. 12. 23. 17:40

/skin/board/basic/view_skin.php

<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">
        &nbsp;글쓴이 :
        <?=$view[name]?><? if ($is_ip_view) { echo "&nbsp;($ip)"; } ?>
        </div>
        <div style="float:right;">
        <img src="<?=$board_skin_path?>/img/icon_view.gif" border='0' align=absmiddle> 조회 : <?=number_format($view[wr_hit])?>
        <? if ($is_good) { ?>&nbsp;<img src="<?=$board_skin_path?>/img/icon_good.gif" border='0' align=absmiddle> 추천 : <?=number_format($view[wr_good])?><? } ?>
        <? if ($is_nogood) { ?>&nbsp;<img src="<?=$board_skin_path?>/img/icon_nogood.gif" border='0' align=absmiddle> 비추천 : <?=number_format($view[wr_nogood])?><? } ?>
        &nbsp;
        </div>
    </td>
</tr>


<? if ($board[bo_1_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_1_subj]?> : <?=$view[wr_1]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_2_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_2_subj]?> : <?=$view[wr_2]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_3_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_3_subj]?> : <?=$view[wr_3]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_4_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_4_subj]?> : <?=$view[wr_4]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_5_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_5_subj]?> : <?=$view[wr_5]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_6_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_6_subj]?> : <?=$view[wr_6]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_7_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_7_subj]?> : <?=$view[wr_7]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_8_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_8_subj]?> : <?=$view[wr_8]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_9_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_9_subj]?> : <?=$view[wr_9]?></div>
    </td>
</tr>
<? } ?>


<? if ($board[bo_10_subj] != "") { ?>
<tr>
    <td height=30 background="<?=$board_skin_path?>/img/view_dot.gif" style="color:#888;">
        <div style="float:left;">&nbsp;<?=$board[bo_10_subj]?> : <?=$view[wr_10]?></div>
    </td>
</tr>
<? } ?>

2013. 12. 23. 17:39

아래 그림은 여분필드를 설정하는 부분입니다.(“게시판관리 > 특정 게시판 수정”)
왼쪽에 여분필드명을 넣고, 오른쪽에 설명을 넣습니다. 왼쪽이 중요합니다.
image

위에서 설정한 정보는 g4_board에 저장 됩니다.
image
어찌된 영문인지 게시판 설정정보를 이용하는 코딩이 안되있더군요.
여분필드를 설정했다고 해서, 아래 그림과 같이 여분필드명이 나오지는 않습니다.
여분필드명은 $board[bo_1_subj] 으로 출력할 수 있습니다.
image

여기까지는 게시판 설정정보이고, 실제 게시물은 각각의 게시판 테이블에 저장됩니다.
image
위 구조에서 보듯이 여분필드 내용은 wr_1에 저장해야 합니다.
<input name=”wr_1” />라고 해줘야 한다는 것 입니다.

그리고 그누보드는 글쓰기와 글수정을 모두 write_skin.php를 사용합니다.
글수정시 input 태그의 value에 wr_1에 저장된 내용을 적어줘야 합니다.
wr_1에 저장된 내용은 $write[wr_1] 으로 끄집어 낼 수 있습니다.


아래는 지금까지 설명한 내용을 토대로 write_skin.php를 확장한 코딩입니다.
굻은글씨가 추가된 부분입니다.
게시판 설정정보에 있는 여분필드명( $board[bo_1_subj]  )을 출력하고,
글쓰기시 실제 게시판 테이블에 있는 wr_1 필드에 저장 합니다.
글수정시 wr_1은 $write[wr_1] 으로 출력합니다.



/skin/board/basic/write_skin.php

<tr>
    <td class=write_head>제 목</td>
    <td><input class='ed' style="width:100%;" name=wr_subject id="wr_subject" itemname="제목" required value="<?=$subject?>"></td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>

 

<? if ($board[bo_1_subj] != "") { ?>
<tr>    <td class=write_head><?=$board[bo_1_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_1" id="wr_1" itemname="<?=$board[bo_1_subj]?>" value="<?=$write[wr_1]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_2_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_2_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_2" id="wr_2" itemname="<?=$board[bo_2_subj]?>" value="<?=$write[wr_2]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_3_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_3_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_3" id="wr_3" itemname="<?=$board[bo_3_subj]?>" value="<?=$write[wr_3]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_4_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_4_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_4" id="wr_4" itemname="<?=$board[bo_4_subj]?>" value="<?=$write[wr_4]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_5_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_5_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_5" id="wr_5" itemname="<?=$board[bo_5_subj]?>" value="<?=$write[wr_5]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_6_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_6_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_6" id="wr_6" itemname="<?=$board[bo_6_subj]?>" value="<?=$write[wr_6]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_7_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_7_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_7" id="wr_7" itemname="<?=$board[bo_7_subj]?>" value="<?=$write[wr_7]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_8_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_8_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_8" id="wr_8" itemname="<?=$board[bo_8_subj]?>" value="<?=$write[wr_8]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_9_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_9_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_9" id="wr_9" itemname="<?=$board[bo_9_subj]?>" value="<?=$write[wr_9]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

<? if ($board[bo_10_subj] != "") { ?>
<tr>
    <td class=write_head><?=$board[bo_10_subj]?></td>
    <td><input class="ed" style="width:100%;" name="wr_10" id="wr_10" itemname="<?=$board[bo_10_subj]?>" value="<?=$write[wr_10]?>"></td>
</tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>

2013. 12. 23. 17:37

/skin/board/basic/list_skin.php

<td class="subject">
       
       
            <?
            // 파일 출력
            /*
            for ($j=0; $j<=count($list[$i][file]); $j++) {
                if ($list[$i][file][$j][view])
                    echo $list[$i][file][$j][view] . "<p>";
            }
            */
            if ($list[$i][file][0][view])
                echo "<img src='$g4[path]/data/file/$bo_table/{$list[$i][file][0][file]}' align='absmiddle' width='100' height='60' />";
            ?>
       
            <?
            echo $nobr_begin;
            echo $list[$i][reply];
            echo $list[$i][icon_reply];
            if ($is_category && $list[$i][ca_name]) {
                echo "<span class=small><font color=gray>[<a href='{$list[$i][ca_name_href]}'>{$list[$i][ca_name]}</a>]</font></span> ";
            }

            if ($list[$i][is_notice])
                echo "<a href='{$list[$i][href]}'><span class='notice'>{$list[$i][subject]}</span></a>";
            else
                echo "<a href='{$list[$i][href]}'>{$list[$i][subject]}</a>";

            if ($list[$i][comment_cnt])
                echo " <a href=\"{$list[$i][comment_href]}\"><span class='comment'>{$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>

prev"" #1 next