게시판 바로가기 - 디비 수정 없이 파일 하나로 끝내기!! 정보
게시판 바로가기 - 디비 수정 없이 파일 하나로 끝내기!!본문
게시판 바로가기 기능을 추가 하고 싶었는데
이전에 있던 팁은 디비도 건들여야 하고 이것 저것 건들여야 하길레
머리아파 고민하다 포기 했었는데
이미 있던 회원 여분 테이블로 꼼수로 만들 수 있을거 같아 고민하다 만들었습니다.
초보가 만든 것이이 좀 어색하고 허술 할 수 있습니다. 양해하고 봐주세요
(실제로 디게 허술 합니다;;)
설명은 길 수 있으나 디비수정이 없고 파일 하나만 추가하면 되는 것이라 간단합니다.
아래 내용을 Fb.php 이란 이름으로 만들어서 그누보드 설치된 폴더에 넣으면 되겠습니다.
주세요 회원 여분 필드 mb_5를 사용합니다.
<!-- utf-8 사용자는 주석 해제 하기
<meta http-equiv="content-type" content="text/html; charset=utf-8">
-->
<style>
body,td,input,div,form,select,textarea,pre{font-size:10pt; font-family:돋움,Tahoma; color:#000000;}
a:link, a:visited, a:active, a:hover {
text-decoration:none;
}
</style>
<?
include_once("./_common.php");
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if($is_member){
$Fbod = $_GET['Fbod'];
$Fbplus = $_GET['Fbplus'];
$Fbminus = $_GET['Fbminus'];
$mypage = $_GET['mypage'];
if (!$Fbod && !$mypage)
alert_close("값이 제대로 넘어오지 않았습니다.");
if($Fbplus && !$Fbminus && $Fbod ){
$Fblist = explode("|",$member['mb_5']);
$Fcnt = count($Fblist);
for($i=0 ; $i<$Fcnt ; $i++) {
if($Fblist[$i]==$Fbod) {
alert_close("이미 바로가기 추가한 게시판 입니다.");
}
}
$limitF = 5; // 게시판 추가 갯수
if($Fcnt<$limitF){
if($member['mb_5'])
$Fbw = $member['mb_5']."|".$Fbod ;
else
$Fbw = $Fbod ;
$sql = " update g4_member SET mb_5 = '$Fbw' where mb_id = '$member[mb_id]' ";
sql_query($sql);
echo "<script language='javascript'>alert('게시판 바로가기 추가 완료');</script>";
}
else
echo "<script language='javascript'>alert('게시판 바로가기는 {$limitF}개 까지만 추가 할 수 있습니다.');</script>";
}
else if(!$Fbplus && $Fbminus && $Fbod){
if($member['mb_5']){
$Fblist = explode("|",$member['mb_5']);
$Fcnt = count($Fblist);
for($i=0 ; $i<$Fcnt ; $i++) {
if($Fblist[$i]!=$Fbod) {
$FbwE[$i] = $Fblist[$i];
}
$Fbw=implode("|",$FbwE) ;
}
$sql = " update g4_member SET mb_5 = '$Fbw' where mb_id = '$member[mb_id]' ";
sql_query($sql);
echo "<script language='javascript'>location.href='$g4[path]/Fb.php?mypage=1';</script>";
}
}
else if($mypage){
if($member['mb_5']){
$Fblist = explode("|",$member['mb_5']);
$Fcnt = count($Fblist);
for ($i=0; $i<$Fcnt; $i++) {
if($Fblist[$i]){
$b_arr =mysql_fetch_array(mysql_query("select bo_subject from $g4[board_table] where bo_table = '$Fblist[$i]'"));
$Fbo_subject = $b_arr[0]; //게시판제목
echo $Fbo_subject." <a href='?mypage=1&Fbminus=1&Fbod=$Fblist[$i]'><span style='color:red'>[삭제]</span></a><br>";
}
}
}
else
echo "<p>바로가기 목록이 없습니다.</p>";
echo "<center><input type=button value='닫 기' onclick='window.close();'></center>" ;
}
}
?>
다음으로
아웃로그인 스킨의 outlogin.skin.2.php에 바로가기 표시하고자 하는 부분에
<SELECT onchange="quick_move(this.value)" style="width:150">
<option value="">게시판 바로가기</option>
<option value="">-------------------------</option>
<?
$FblistE = $member['mb_5'];
$Fblist = explode("|",$FblistE);
$Fcnt = count($Fblist);
for ($i=0; $i<$Fcnt; $i++) {
if($Fblist[$i]){
$b_arr =mysql_fetch_array(mysql_query("select bo_subject from $g4[board_table] where bo_table = '$Fblist[$i]'"));
$Fbo_subject = $b_arr[0]; //게시판제목
?>
<option value="<?=$Fblist[$i]?>"><?=$Fbo_subject?></option>
<? } }?>
</SELECT>
<a onclick="window.open('<?=$g4[path]?>/Fb.php?mypage=1', 'popup1','left=100,top=100,width=300,height=300,location=0,status=no,menubar=0,scrollbars=0,toolbar=0,resizable=0')">편집</a>
<script language="JavaScript">
function quick_move(bo_table)
{
if (!bo_table) return;
location.href = "<?=$g4[bbs_path]?>/board.php?bo_table=" + bo_table;
}
</script>
이 부분을 추가 합니다.
그리고 게시판 스킨 list.skin.php 적당한 곳에 아래 내용을 추가 합니다.
<a href="<?=$g4['path']?>/Fb.php?Fbod=<?=$bo_table?>&Fbplus=1" target="hiddenframe"><img src='<?=$board_skin_path?>/img/btn_my_menu.gif' align="absmiddle"></a>
바로가기 추가 버튼이에요 ^^*
<form name="fcategory" method="get" style="margin:0; padding:0;">
이 위에 추가하면 되겠습니다.
좀 복잡하게 보일 수 있으나 그냥 붙여 넣기만 하면 됩니다.
중간중간 빨간색은 자신에 맞게 고치시구요 mb_5 필드도 사용중이라면 전부 다른것으로 바꾸시구용
질문은 nhead.com 비회원 게시판에 ^^*
0
댓글 4개
Warning: Cannot modify header information - headers already sent by (output started at /home1/lbw0222/public_html/Fb.php:2) in /home1/lbw0222/public_html/common.php on line 8
오류메세지를 보면 Fb.php 파일의 include_once("./_common.php");
이부분이 이미 불러져 와서 오류가 나는 메세지 같은데요...
지우면 괜찮아 질라나;; 이거 감이 안잡히네요;;;

<meta http-equiv="content-type" content="text/html; charset=utf-8">
-->
<style>
body,td,input,div,form,select,textarea,pre{font-size:10pt; font-family:돋움,Tahoma; color:#000000;}
a:link, a:visited, a:active, a:hover {
text-decoration:none;
}
</style>
이 부분이 include_once("./_common.php"); 이거 아래쪽에 위치해야 합니다~~