2004년 9월 24일 금요일

모두들 즐거운 추석이 되세요!!

이제 하루만 지나면 즐거운 추석 연휴입니다.


하지만..   전 내일 당직이라 내일(토요일)에는 출근을 해야 한답니다.


뭐하는 것도 없다고 하는 당직이지만..


내일 하루만 잘 버티면 일,월,화,수 까지 쭉 쉴수가 있답니다..


추석 연휴라도 특별히 해야 하는 것은 없지만..


 


그럼 모두들 즐거운 추석 연휴 보내시길 빕니다..  


 


 

월별 글쓰기 및 코멘트 쓰기 랭킹 달기!!!

- 오래전에 nzeo.com에 공개한 팁입니다. 관리를 위해 옮겨놓습니다.

http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=on&sc=off&keyword=유메미루&select_arrange=headnum&desc=asc&no=4617

수많은 분들이 포인트 랭킹이라고 해서 전체순위를 보여주는 프로그램을 많이 보셨으리라 봅니다.,
이번 프로그램은 그 순위중에서 해당별로 출력을 해주는 것입니다.

1. 디비 필드 만들기.
다른 방법도 많이 생각을 해봤지만 날마다 디비에 저장하여 뽑는 편이 제일 편한 방법일거라고 생각하여 디비자원을 조금 쓰도록 합니다.
위의 프로그램을 복사하여 제로보드 폴더에 옮기신후 실행하여 주시면 생성이 됩니다.

<?

$host = "localhost";
$user = "******"; //mysql ID
$password = "******"; //mysql PW
$dbname = "******"; //DataBase Name

$query = "
CREATE TABLE lank (
  no int(11) NOT NULL auto_increment,
  member_no int(11) NOT NULL default '',
  member_id varchar(20) NOT NULL default '',
  wp int(20) NOT NULL default '',
  cp int(20) NOT NULL default '',
  check_date int(13) NOT NULL default '',
  PRIMARY KEY  (no),
  UNIQUE KEY no (no)
) TYPE=MyISAM;";


//디비커넥션
mysql_connect($host,$user,$password);
//쿼리실행
$result = mysql_db_query($dbname,$query);
?>

2. 프로그램 보기

 <?

/*************************************************************
* 월별 글쓰기 코멘트 순위 표기하기
*
* 프로그래밍 : 박상연(yumemiru@zeeps.com)
*
* 홈페이지 : http://zeeps.com
*
* 이 프로그램은 월별 글쓴수와 코멘트수를 표기하기 위해 만들었습니다..
*
* 저작권 명시를 삭제하시면 안됩니다.
*
* 원하시는대로 수정하여 사용하실수 있으나 수정후 배포는 하지마시기 바랍니다.
*
************************************************************/

 $now = time();                // 현재 시간을 초단위로 구해줍니다. time()사용하면 유니버설스템프타임 여튼 이걸구해줍니다./
  $year= date('Y');
  $month= date('m');
  $day=date('d'); 
  $hour = date('H');             // 현재 몇시인지 구해줍니다. h는 12시간으로 표기 H는 24시간으로 표기해줍니다./
  $min = date('i');               // 현재 몇분인지 구해줍니다./ 
  $sec = date('s');               // 현재 몇초인지 구해줍니다./
  $to_day = mktime(0,0,0,$month,$day,$year); //특정하게 지정된 날짜의 시간을 초단위로 구해줍니다./
  $first_day = mktime(0,0,0,$month,1,$year); // 매월 1일을 구함./
  $end_day=date('t');  // 이달의 마지막날.
  $lankSql = "select * from lank where  check_date = '$to_day' order by wp desc limit 1";
  $count_lank = mysql_query($lankSql,$connect);

  $count_ok=mysql_num_rows($count_lank);

if($count_ok==0)
{
// 제가 사용하는 홈페이지에서는 마지막글쓴날을 표기하도록 하였으므로 이런 방식을 사용합니다.
$temp2 =mysql_query("select no,name from zetyx_member_table where last_write >'$first_day'",$connect);
//$temp2 =mysql_query("select no,name from zetyx_member_table",$connect);


$target_board = "freeboard||q_a||tips||oekaki||to_admin||rk_skin";  //생성한 게시판 아이디를 모두 적는다
$arry_board = explode("||",$target_board);
$target_borad_name= "자게||질답||팁||오에||정보||스킨";
$title_name_temp = explode("||",$target_borad_name);
$boardTotal = sizeof($arry_board);

while($mem_data = mysql_fetch_array($temp2)){
        $mem_no = $mem_data[no];
        $mem_name = $mem_data[name];

        $write = 0;
        $comment = 0;
               
        for ($k=0;$boardTotal>$k;$k++)
        {
              $board_name=$arry_board[$k];
        $countSql = "select * from zetyx_board_$board_name where  ismember='$mem_no' and reg_date>'$first_day'";
        $count = mysql_query($countSql,$connect);
        $write = $write + mysql_num_rows($count);

        $countSql = "select * from zetyx_board_comment_$board_name where  ismember='$mem_no' and reg_date>'$first_day'";
        $count = mysql_query($countSql,$connect);
        $comment = $comment + mysql_num_rows($count);
        }
        mysql_query("insert into lank (member_no,member_name,wp,cp,check_date) values ('$mem_no','$mem_name','$write','$comment','$to_day')") or error(mysql_error());
         }
// 불필요한 디비 자원을 삭제합니다.
  $result = mysql_query("delete from lank where check_date < '$to_day'");
 
  }
?>


<table border=0 cellspacing=0 cellpadding=0 width=185>
  <tr>
        <td height=27 bgcolor=445599>
                < img src=http://zeeps.com/ver4/images/t.gif border=0 height=5>

                < font color=white> < b><?=$month?>월의 글올림이(~<?=$month?>월<?=$day?>일)
        </td>
</tr>
</table>

< img src=http://zeeps.com/ver4/images/t.gif height=2>

<table border=0 width=185 cellspacing=1 cellpadding=8 bgcolor=A9DDDE>
<tr><td valign=top bgcolor=white>< img src=http://zeeps.com/ver4/images/t.gif border=0 height=4>

<?

$lankSql = "select * from lank where  check_date = '$to_day' order by wp desc limit 5";
$count_lank = mysql_query($lankSql,$connect);
$i=1;

while($lank_data = mysql_fetch_array($count_lank)){ 
      $mem_no=$lank_data[member_no];
      $mem_name=$lank_data[member_name];

      $private_icon_file=$_zb_path."icon/private_icon/".$mem_no.".gif";
      if(@file_exists($private_icon_file)) {
          $private_icon_file=$_zb_url."icon/private_icon/".$mem_no.".gif";
          $mem_name="< img src='$private_icon_file' border=0 align=absmiddle>".$mem_name;
          }
    else{
        $mem_name="< img src='".$_zb_url."images/zs.gif' border=0 align=absmiddle>".$mem_name;
        } 

      $write_no=$lank_data[wp];  
      $comment_no=$lank_data[cp];
      echo "$i 위  $mem_name ($write_no)
";
      echo "< img src=http://zeeps.com/ver4/images/t.gif border=0 height=10>
";
            $i++;
      }
echo "< a href=http://zeeps.com target=_blak>< font color=orange>program by 유메미루";

?>
</td></tr>
</table>

읽던 게시물 운영자에게 쪽지(메시지)로 신고 하기 - 아이쿠님 버젼 업그레이드

- 오래전에 nzeo.com에 공개한 팁입니다. 관리를 위해 옮겨놓습니다.


http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=on&sc=off&keyword=유메미루&select_arrange=headnum&desc=asc&no=4455


기존에 아이쿠님이 만드신 게시물 신고 하기 기능의 경우에는 최고 관리자에게만 쪽지가 갑니다.
이경우 모든 게시판에서 오는 쪽지를 최고 관리자가 다 보고 다시 해당 게시판 관리자에게
다시 쪽지를 보내거나 최고 관리자가 일일이 해결을 해야 하는 문제점이 있었죠??

그래서 해당 게시판의 관리자(들)에게  직접 쪽지를 보내버리는 방법입니다.

기존 아이쿠님의 자료를 조금 수정을 해야 하므로 먼저 아이쿠님의 자료를 받아 보시기 바랍니다.

1. report_memo1.php 파일에서 수정사항: 빨간 글씨부분을 추가..

<input type=hidden name=memodate value="<?=$reg_date?>">
<input type=hidden name=id value="<?=$id?>">
<input type=hidden name=memo value="< a href='view.php?id=<?=$id?>&no=<?=$no?>'>< font color=orange>게시물로 바로 이동하시려면 여기를 누르세요.">

2.report_memo2.php 파일에서의 수정사항: 기존의 쪽지보내는 부분을 삭제하고 빨간 글씨 부분으로 대체.

$reg_date=time();

$temp_no =mysql_fetch_array(mysql_query("select * from zetyx_admin_table where name='$id'"));
$board_no=$temp_no[no];
$board_name_temp=mysql_query("select * from zetyx_member_table where board_name like '%$board_no%'");
  
     while($data=mysql_fetch_array($board_name_temp))
        {
       $manage_no=$data[no];
       $manage_name=$data[name];
       $manage_board_no=explode(",",$data[board_name]);    
        
       $count=count($manage_board_no);
       for($i=0;$i<$count;$i++)
          {
           if($manage_board_no[$i]==$board_no)
              {
             mysql_query("insert into $get_memo_table    (member_no,member_from,subject,memo,readed,reg_date) values ('$manage_no','$member[no]','$subject','$memo2',1,'$reg_date')") or error(mysql_error());
             // mysql_query("insert into $send_memo_table (member_to,member_no,subject,memo,readed,reg_date) values ('1','$member[no]','$subject','$memo2',1,'$reg_date')") or error(mysql_error());
             mysql_query("update $member_table set new_memo=1 where no='$manage_no'") or error(mysql_error());
               }
           }
          }


위와 같이 하면 관리자가 몇명이든 알아서 해당 관리자에게로 쪽지가 전달이 됩니다.
저의 경우에는 신고를 한 사람의 경우에는 보낸 쪽지함에 자료를 남기지 않도록 하였습니다.
자신이 쪽지 보낸거 아는데 꼭 볼 필요는 없을거 같고, DB여유도 많기 않기 떄문입니다.

게시판 상단에 관리자 나타내기(#수정1)

- 오래전에 nzeo.com에 공개한 팁입니다. 관리를 위해 옮겨놓습니다.


http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=on&sc=off&keyword=유메미루&select_arrange=headnum&desc=asc&no=4389


아마도 하나의 홈페이지를 여러 사람들이 관리하는 사람들은 가끔 겪는 일일듯 합니다.
이전 게시판관리자가 더이상 관리를 못하고 다른 사람으로 바뀌었을떄..
그떄마다 setup 파일이나 header 파일을 수정하는 수고를 해야했죠,.,
저도 하나의 홈페이지를 많은 사람들과 같이 관리를 하다 보니 그런일이 빈번하더군요,
그래서 귀차니즘의 일환으로 만들어 버렸습니다.

이번에는 고쳐야 할 파일이 달랑 두개 뿐입니다.

먼저 첨부된 파일을 제로보드 폴더에 올려주시기 바랍니다.

그다음 zboard.php 파일 수정.

// 헤더 출력
        $_skinTimeStart = getmicrotime();
        head('',"script_list.php");


// 관리자 출력 by 유메미루(yumemiru@zeeps.com)
        include "manager_board.php";

// 상단 현황 부분 출력
        include "$dir/setup.php";
        $_skinTime += getmicrotime()-$_skinTimeStart;

마지막으로 view.php 파일 수정
// 헤더 출력
        if(!$_view_included)head();


// 관리자 출력 by 유메미루(yumemiru@zeeps.com)
        if(!$_view_included) include "manager_board.php";

// 상단 현황 부분 출력
        if(!$_view_included) {
                $_skinTimeStart = getmicrotime();
                include "$dir/setup.php";
                $_skinTime += getmicrotime()-$_skinTimeStart;
        }

파란색으로 된 부분만 첨부하면 되니 큰 어려움은 없을거 같네요,,

manager_borad.php
Free™의 요청에 의해 관리자가 없는 경우 나타나지 않도록 수정 2003년 7월 12일

<?
       // 라이브러리 함수 파일 인크루드
       require "lib.php";

       // DB 연결
        if(!$connect) $connect=dbConn();

       $temp_no =mysql_fetch_array(mysql_query("select * from zetyx_admin_table where name='$id'"));
       $board_no=$temp_no[no];
       $board_name=$temp_no[title];
       echo "<table border=0 cellspacing=0 cellpadding=0 width=$width><tr><td align=right>";
      
      
       $board_name_temp=mysql_query("select * from zetyx_member_table where board_name like '%$board_no%'");
    
     $board_ok==0;  

       while($data=mysql_fetch_array($board_name_temp))
        {
       $manage_no=$data[no];
       $manage_name=$data[name];
       $manage_board_no=explode(",",$data[board_name]);    
        
       $count=count($manage_board_no);

       for($i=0;$i<$count;$i++)
          {
           if($manage_board_no[$i]==$board_no)
              {
              if($board_ok==0)
                 {
                   echo "< font color=blue>< b>$board_name 관리자< /b>< /font>: ";
                   $board_ok++;
                 }  
            
              $manage_name="".$manage_name;
              $manage_name=$manage_name."
";

              $private_icon_file=$_zb_path."icon/private_icon/".$manage_no.".gif";
              if(@file_exists($private_icon_file))
                 {
                 $private_icon_file=$_zb_url."icon/private_icon/".$manage_no.".gif";
                 $manage_name="< img src='$private_icon_file' border=0 align=absmiddle>".$manage_name;
                  }
                  else{
                 $manage_name="< img src='".$_zb_url."images/zs.gif' border=0 align=absmiddle>".$manage_name;
                  }

               echo "$manage_name ";
              }                                        
          }
        }
       echo "</td></tr></table>";      
?>  

게시판 포인트 관리자마음대로 하자!!

-오래전에 nzeo.com에 공개한 팁입니다. 관리를 위해 이곳에 옮겨 놓습니다.


http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=on&sc=off&keyword=유메미루&select_arrange=headnum&desc=asc&no=4322


아마도 이런 팁들을 많이 봐서 이제는 지칠대로 지쳤으리라 생각이 됩니다만..
이번 버젼은 게시판이 생성이 될떄마다 write_ok.php 파일에 추가를 하는 버젼이 아니라
게시판 관리자 모드에서 기입을 하여 수정하는 방식이므로 그러한 수고가 덜어지는 종합 버젼이라고 생각하시면 됩니다.
하지만 이전의 파일 수정 버젼은 한두개의 파일만 고치면 됐지만
지금의 버젼은 좀(??) 많은 파일을 수정해야 하기 떄문에 잘 생각해보고 하시기 바랍니다.
아래는 편의상 경어를 생략하니 알아서 봐주시기 바랍니다.

1 . DB에 추가하기.
zetyx_admin_table 에 write_point,comment_point 라는 두개의 필드를 추가한다.
추가시 각각 int(11)정도로 하면 무리가 없다. 물론 디폴트값은 각각 1이다.
디비에 필드를 추가할줄 모르는 사람은 좀더 도(??)를 딱고 와서 보기 바란다.

2. 게시판 관리자 모드 수정하기
관련 파일  : admin/admin_modify_board.php

<tr height=25 bgcolor=#e0e0e0>
  <td align=right style=font-family:Tahoma;font-size:8pt;>최고 업로드 가능 용량 </td>
  <td >  
     <input type=text name=max_upload_size value="<?=$data[max_upload_size]?>" size=10  class=input style=border-color:#b0b0b0> byte    (최고한도 : <?echo get_cfg_var("upload_max_filesize"); ?> byte)
  </td>
</tr>



<tr height=25 bgcolor=#e0e0e0>
  <td align=right style=font-family:Tahoma;font-size:8pt;>글쓴수에 따른 제니 </td>
  <td >  
     <input type=text name=write_point value="<?=$data[write_point]?>" size=10  class=input style=border-color:#b0b0b0> Zeny    
  </td>
</tr>

<tr height=25 bgcolor=#e0e0e0>
  <td align=right style=font-family:Tahoma;font-size:8pt;>코멘트에 따른 제니 </td>
  <td >  
     <input type=text name=comment_point value="<?=$data[comment_point]?>" size=10  class=input style=border-color:#b0b0b0> Zeny    
  </td>
</tr>


<? if($data[use_cart]) $check="checked"; else $check=""; ?>
<tr height=25 bgcolor=#e0e0e0>
  <td align=right style=font-family:Tahoma;font-size:8pt;>바구니 기능 </td>
  <td >  
     <input type=checkbox  name=use_cart value='1' <?echo $check;?>>
     바구니 기능 사용
  </td>
</tr>
빨간 색으로 된 부분을 원하는 자리에 넣으면 된다..필자의 경우 NZEO라그나로크 팬사이트의 웹마스터로서 부득이 하게 ZENY라는 돈표시를 하였으나 각자 원하는 단위를 사용하면 될듯..

관련 파일  : admin/admin_exec_board.php

@mysql_query("update $admin_table set
                                only_board='$only_board',skinname='$skinname',header='$header',footer='$footer',header_url='$header_url',footer_url='$footer_url',
                                bg_image='$bg_image',bg_color='$bg_color',table_width='$table_width',memo_num='$memo_num', page_num='$page_num', cut_length='$cut_length', use_category='$use_category', use_html='$use_html',max_upload_size='$max_upload_size',
                                use_filter='$use_filter',use_status='$use_status',use_pds='$use_pds',use_homelink='$use_homelink',
                                title='$title',pds_ext1='$pds_ext1',pds_ext2='$pds_ext2',write_point='$write_point',comment_point='$comment_point',
                                use_filelink='$use_filelink',use_cart='$use_cart',use_autolink='$use_autolink',use_showip='$use_showip',
                                use_comment='$use_comment',use_formmail='$use_formmail',use_showreply='$use_showreply', use_secret='$use_secret', filter='$filter', avoid_tag='$avoid_tag', avoid_ip='$avoid_ip', use_alllist='$use_alllist' where no='$no'") or Error("게시판의 기능설정 변경시 에러가 발생하였습니다");
                movepage("$PHP_SELF?group_no=$group_no&exec=view_board&no=$no&exec2=modify&page=$page&page_num=$s_page_num");
        }

게시판 수정부분에서 빨간 부분만을 추가하면 사용할수 있는 준비가 모두끝이다.

3. 모든 게시판에 적용되게 수정하기

관련 파일  : _head.php
위의 수정을 다 하였다면 모든 게시판에 적용이 될수 있도록 하기 위한 준비를 해야 한다.

// 게시판의 가로크기 설정
$width=$setup[table_width];


// 각각의 글쓴수에 따른 점수 설정 by 유메
$write_point=$setup[write_point];
$comment_point=$setup[comment_point];  

// 카테고리 읽어오기

위의 빨간 글씨부분도 어느 부분에 넣던지 상관없으니 알아서 넣으면 된다..

4. 글쓸때 포인트 주기
관련 파일  : write_ok.php
// 회원일 경우 해당 해원의 점수 주기

  if($mode=="write"||$mode=="reply") @mysql_query("update $member_table set point1=point1+$write_point where no='$member[no]'",$connect) or error(mysql_error());

5. 코멘트쓸때 포인트 주기
관련 파일  : comment_ok.php

// 회원일 경우 해당 해원의 점수 주기
@mysql_query("update $member_table set point2=point2+$comment_point where no='$member[no]'",$connect) or error(mysql_error());

6. 글 삭제시 점수 빼기
관련 파일  : delete_ok.php , del_comment_ok.php

delete_ok.php 에는 _head.php 파일을 인크루드 하지 않기 때문에 상단에 다시한번 아래의 구문을 넣어주어야 한다. 그렇지 않으면 점수를 빼지 않는 경우가 발생한다,


// 각각의 글쓴수에 따른 점수 설정 by 유메
$write_point=$setup[write_point];
$comment_point=$setup[comment_point];  

나머지는 상단의 경우에서 "+" 를 "-" 로 고쳐주면 된다.

아직까지 이 긴글을 읽어준 모든 분께 감사를 드립니다.

연이어 코멘트 못달게 하기!!!







-오래전에 nzeo.com에 공개한 팁입니다. 관리를 위해 옮겨놓습니다.

http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=on&sc=off&keyword=유메미루&select_arrange=headnum&desc=asc&no=4120

 


아마 아바타샵을 같이 운영하시는 운영자님들은 잘 아실겁니다.
코멘트 점수를 얻기위해 자신의 코멘트를 연달아 놓은 분들이 존재 한다는 사실을!!!
이런 분들이 아예 발 붙이지 못하게 하기위해 연이어 코멘트 못달게 하기팁을  공개 합니다..

수정 소스 : commemt_ok.php
수정 부분 :

// 같은 내용이 있는지 검사;;
        if(!$is_admin) {
                $temp=mysql_fetch_array(mysql_query("select count(*) from $t_comment"."_$id where memo='$memo' and no='$max_no[0]'"));
                if($temp[0]>0) Error("같은 내용의 글은 등록할수가 없습니다");
        }

// 같은 사람이 쓴 코멘트가 있는지 검사하기
               if(!$is_admin) {
        $temp=mysql_fetch_array(mysql_query("select count(*) from $t_comment"."_$id where ismember='$member[no]' and no='$max_no[0]'"));
        if($temp[0]>0) Error("한사람이 연이어 글은 등록할수가 없습니다. 위글을 삭제후 통합하여 주시기바랍니다.");
        }


// 쿠키 설정;;

위의 빨간 부분만 첨가 하시면 됩니다..
그럼 홈페이지 잘 운영하시기 바랍니다.

누가 어떤 게시판을 관리하고 있는지 한눈에 보자!!!!

- 오래전에 nzeo.com에 공개했던 팁입니다. 관리를 위해 이곳에 옮겨놓습니다.


http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=on&sc=off&keyword=유메미루&select_arrange=headnum&desc=asc&no=3815


오랜만에 팁을 발표하네요,,



나름대로 2년여 동안 사이트를 관리하다 보니



이젠 누가 어떤 게시판을 관리하고 있는지 잊어버릴때가 많아서



만들었습니다..



압축 파일을 다운 받아서 제로보드 폴더에 올리시면 곧 바로 사용가능합니다.


다운로드

특정그룹만 접근 가능한 게시판 만들기

-오래전에 nzeo.com에 공개를 했던 팁입니다. 관리를 위해 이곳에 옮겨놓습니다.


http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=on&sc=off&keyword=유메미루&select_arrange=headnum&desc=asc&no=2475


아마 제로보드의 그룹을 이용하여 회원을 관리하시는분들이 많은걸로 알고 있습니다.

하지만 각각의 그룹의 특성상 몇몇 게시판은 모든 그룹이 글을 쓰는 공개된 게시판이어야 하고, 각 그룹의 게시판은 다른 그룹에서 볼수가 없어야 겠죠..



저도 이문제 때문에 고심하다가 드디어 방법을 찾아냈습니다. 그럼 순서대로 이야기를 할꼐요..



먼저 디비를 열어야 합니다. 그룹넘버(group_no)를 이용하게 되면 다른 그룹에서도 글을 쓸수 있기떄문에 새로운 필드를 추가해야 합니다.



전 제가 관리하는 홈페이지의 특성상 zetyx_member_table 에 guild_no 라는 필드를 추가했습니다.

특성은 interger(10)를 주시면되고 디폴트값을 0을 주셔야 합니다.

그래야 초기에 가입한 사람들의 guild_no가 0 으로 셋팅되겠죠..



디비 수정을 다 하셨다구요,,이게 젤 어려운건데 수고하셨읍니다.



그럼 다음 단계로 넘어가죠..

이번 단계는 관리자/회원정보 화면에서 길드의 숫자를 보이게 하는겁니다.

admin 폴더에 보시면 admin_modify_member.php파일이 있을겁니다.

여기 중간에다가 아래를 복사해서 삽입해주세요,..

  <tr height=22 align=center>

     <td bgcolor=#a0a0a0 align=right style=font-family:Tahoma;font-size:8pt;font-weight:bold;>Guild_no  </td>

     <td align=left bgcolor=#e0e0e0> <input type=text name=guild_no size=10 maxlength=255 value="<?=$member_data[guild_no]?>" class=input style=border-color:#b0b0b0>기존길드는 0, 신생길드생길시 차례대로증가시킬것.</td>

  </tr>

전 E-mail 위에다 했읍니다만 위치가 여러분 마음대로하시면 됩니다.



그 다음 단계는 수정이 가능토록 하는겁니다.

마찬가지로 admin 폴더에 보시면 admin_exec_member.php파일이 있을겁니다.

열어보시면 //회원정보를 변경하는부분 이라는 곳이 있죠. 여기에 다음을 삽입해주세요..



                if($guild_no) $que.=",guild_no='$guild_no'";

                if($email) $que.=",email='$email'";

전 이전과 마찬가지로 E-mail부분위에삽입을 했습니다.



이제 마지막 단계입니다.

특정 그룹만 사용할 스킨을 선택하고 수정하는거죠..

먼저 원하시는 스킨을 선택하시고, 스킨 폴더의 setup.php 파일을 엽니다.

파일의 상단에 아래를 삽입하면 됩니다.

<?

  include "./lib.php";

  $connect=dbConn();

  $member=member_info();

  if($member[level] != "1"  && $member[guild_no] != "1" ) Error("죄송합니다. <BR>타길드는 접근할수 없습니다.");

?>



위를 보시면 아시겠지만  레벨이 1인 사람과 길드넘버가 1인 사람만 접근이 가능한걸로 되어 있습니다. 사전에 어드민/회원관리 화면에서 회원에 따라 guild_no를 수정해주시면 다른 사람은 접근을 하지 못하겠죠..


이젠 예비 필드 x,y 를 활용하자..

-- 오래전에 nzeo.com에 공개한 팁입니다. 관리(??)를 위해 이곳으로 옮겨놓습니다.


http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=on&ss=on&sc=off&keyword=유메미루&select_arrange=headnum&desc=asc&no=2213


아마 제로보드를 사용하시는 분들중에 게시판 디비의 수가 적어서 활용을 못하시는분들이 많을걸로 압니다.
저도 이래저래 하다보면 필드가 적어서 디비를 추가하는 경우가 많은데 그것보다는 예비 필드를 활용하므로서 디비를 수정하기보단 편하게 추가하는 편이 낳을거 같아 몇자 적어봅니다.

스킨 만드실때 고려할 상황인데요..보통 스킨 상의 write.php 문에 해당합니다.
<tr>
  <td style='font-family:Tahoma; font-size:8pt' align=right>예비 필드 1</td>
  <td> <input type=text name=zx value="<?=$data[x]?>" <?=size(20)?> maxlength=100 class=input></td>
</tr>
<tr>
  <td style='font-family:Tahoma; font-size:8pt' align=right>예비 필드 2</td>
  <td> <input type=text name=zy value="<?=$data[y]?>" <?=size(20)?> maxlength=100 class=input></td>
</tr>
위에서 처럼 name=zx , name=zy 로 받으셔야 제대로 작동을 합니다, 이것은 제로님이 write_ok.php 문 상에서 $x=$zx , $y=$zy 로 받으셨기 때문에 어쩔수 가 없더군요.

두번째 고칠 파일은 제로보드 폴더의 write.php 문입니다.

if($mode=="modify") {

                // 비밀글이고 패스워드가 틀리고 관리자가 아니면 리턴
                if($data[is_secret]&&!$is_admin&&$data[ismember]!=$member[no]&&$HTTP_COOKIE_VARS[zb_s_check]!=$setup[no]."_".$no) error("정상적인 방법으로 수정하세요");

                        $name=stripslashes($data[name]); // 이름
                        $email=stripslashes($data[email]); // 메일
                        $homepage=stripslashes($data[homepage]); // 홈페이지
                        $subject=$data[subject]=stripslashes($data[subject]); // 제목
                        $subject=str_replace("\"",""",$subject);
                        $homepage=str_replace("\"",""",$homepage);
                        $name=str_replace("\"",""",$name);
                        $sitelink1=str_replace("\"",""",$sitelink1);
                                 $sitelink2=str_replace("\"",""",$sitelink2);
                                                // 추가 필드 사용을 위한 추가 by 유메  
                                                $x=stripslashes($data[x]);
                                                $y=stripslashes($data[y]);
위부분을 찾으셔서 위의 두줄을 추가해주세요.. 이것을 해주셔야 저장된 게시물을 수정할때 x,y 의 내용이 보이게 됩니다.

세번째 수정할 파일은 write_ok.php 문입니다. 조금 바꾸어야 할 부분이 많은 파일이니 주의하시기 바랍니다.

// 각종 변수의 addslashes 시킴;;
       $homepage=addslashes(del_html($homepage));
        // 예비 추가 필드 사용을 위한 추가 by 유메
        $x=addslashes(del_html($x));
        $y=addslashes(del_html($y));

/***************************************************************************
* 수정글일때
**************************************************************************/
minus_division($s_data[division]);
// 예비 필드 수정모드 사용을 위한 추가 by 유메
@mysql_l_query("update $t_board"."_$id set headnum='$headnum',prev_no='$prev_no',next_no='$next_no',child='$child',depth='$depth',arrangenum='$arrangenum',father='$father',name='$name',email='$email',homepage='$homepage',subject='$subject',memo='$memo',sitelink1='$sitelink1',sitelink2='$sitelink2',use_html='$use_html',reply_mail='$reply_mail',is_secret='$is_secret',x='$x',y='$y',category='$category' $del_que1 $del_que2 where no='$no'") or error(mysql_error());
plus_division($division);

// 일반글 -> 공지
@mysql_query("update $t_board"."_$id set division='$division',headnum='$headnum',prev_no='$prev_no',next_no='$next_no',child='$child',depth='$depth',arrangenum='$arrangenum',father='$father',name='$name',email='$email',homepage='$homepage',subject='$subject',memo='$memo',sitelink1='$sitelink1',sitelink2='$sitelink2',use_html='$use_html',reply_mail='$reply_mail',is_secret='$is_secret',x='$x',y='$y',category='$category' $del_que1 $del_que2 where no='$no'") or error(mysql_error());

// 일반->일반, 공지->공지 일때
} else {
@mysql_query("update $t_board"."_$id set name='$name',subject='$subject',email='$email',homepage='$homepage',memo='$memo',sitelink1='$sitelink1',sitelink2='$sitelink2',use_html='$use_html',reply_mail='$reply_mail',is_secret='$is_secret',x='$x',y='$y',category='$category' $del_que1 $del_que2 where no='$no'") or error(mysql_error());
                        


/***************************************************************************
* 답변글일때
**************************************************************************/
// 답글 데이타 입력;;
mysql_query("insert into $t_board"."_$id (division,headnum,arrangenum,depth,prev_no,next_no,father,child,ismember,memo,ip,password,name,homepage,email,subject,use_html,reply_mail,category,is_secret,sitelink1,sitelink2,file_name1,file_name2,s_file_name1,s_file_name2,x,y,reg_date,islevel) values ('$division','$headnum','$arrangenum','$depth','$prev_no','$next_no','$father','$child','$member[no]','$memo','$ip','$password','$name','$homepage','$email','$subject','$use_html','$reply_mail','$category','$is_secret','$sitelink1','$sitelink2','$file_name1','$file_name2','$s_file_name1','$s_file_name2','$x','$y','$reg_date','$member[is_admin]')") or error(mysql_error());    

/***************************************************************************
* 신규 글쓰기일때
**************************************************************************/

mysql_query("insert into $t_board"."_$id (division,headnum,arrangenum,depth,prev_no,next_no,father,child,ismember,memo,ip,password,name,homepage,email,subject,use_html,reply_mail,category,is_secret,sitelink1,sitelink2,file_name1,file_name2,s_file_name1,s_file_name2,x,y,reg_date,islevel) values ('$division','$headnum','$arrangenum','$depth','$prev_no','$next_no','$father','$child','$member[no]','$memo','$ip','$password','$name','$homepage','$email','$subject','$use_html','$reply_mail','$category','$is_secret','$sitelink1','$sitelink2','$file_name1','$file_name2','$s_file_name1','$s_file_name2','$x','$y','$reg_date','$member[is_admin]')") or error(mysql_error());

위를 잘 참조하시고 필드 넉넉하게 쓰세요!!!아마 제로보드를 사용하시는 분들중에 게시판 디비의 수가 적어서 활용을 못하시는분들이 많을걸로 압니다.
저도 이래저래 하다보면 필드가 적어서 디비를 추가하는 경우가 많은데 그것보다는 예비 필드를 활용하므로서 디비를 수정하기보단 편하게 추가하는 편이 낳을거 같아 몇자 적어봅니다.

스킨 만드실때 고려할 상황인데요..보통 스킨 상의 write.php 문에 해당합니다.
<tr>
  <td style='font-family:Tahoma; font-size:8pt' align=right>예비 필드 1</td>
  <td> <input type=text name=zx value="<?=$data[x]?>" <?=size(20)?> maxlength=100 class=input></td>
</tr>
<tr>
  <td style='font-family:Tahoma; font-size:8pt' align=right>예비 필드 2</td>
  <td> <input type=text name=zy value="<?=$data[y]?>" <?=size(20)?> maxlength=100 class=input></td>
</tr>
위에서 처럼 name=zx , name=zy 로 받으셔야 제대로 작동을 합니다, 이것은 제로님이 write_ok.php 문 상에서 $x=$zx , $y=$zy 로 받으셨기 때문에 어쩔수 가 없더군요.

두번째 고칠 파일은 제로보드 폴더의 write.php 문입니다.

if($mode=="modify") {

                // 비밀글이고 패스워드가 틀리고 관리자가 아니면 리턴
                if($data[is_secret]&&!$is_admin&&$data[ismember]!=$member[no]&&$HTTP_COOKIE_VARS[zb_s_check]!=$setup[no]."_".$no) error("정상적인 방법으로 수정하세요");

                        $name=stripslashes($data[name]); // 이름
                        $email=stripslashes($data[email]); // 메일
                        $homepage=stripslashes($data[homepage]); // 홈페이지
                        $subject=$data[subject]=stripslashes($data[subject]); // 제목
                        $subject=str_replace("\"",""",$subject);
                        $homepage=str_replace("\"",""",$homepage);
                        $name=str_replace("\"",""",$name);
                        $sitelink1=str_replace("\"",""",$sitelink1);
                                 $sitelink2=str_replace("\"",""",$sitelink2);
                                                // 추가 필드 사용을 위한 추가 by 유메  
                                                $x=stripslashes($data[x]);
                                                $y=stripslashes($data[y]);
위부분을 찾으셔서 위의 두줄을 추가해주세요.. 이것을 해주셔야 저장된 게시물을 수정할때 x,y 의 내용이 보이게 됩니다.

세번째 수정할 파일은 write_ok.php 문입니다. 조금 바꾸어야 할 부분이 많은 파일이니 주의하시기 바랍니다.

// 각종 변수의 addslashes 시킴;;
       $homepage=addslashes(del_html($homepage));
        // 예비 추가 필드 사용을 위한 추가 by 유메
        $x=addslashes(del_html($x));
        $y=addslashes(del_html($y));

/***************************************************************************
* 수정글일때
**************************************************************************/
minus_division($s_data[division]);
// 예비 필드 수정모드 사용을 위한 추가 by 유메
@mysql_l_query("update $t_board"."_$id set headnum='$headnum',prev_no='$prev_no',next_no='$next_no',child='$child',depth='$depth',arrangenum='$arrangenum',father='$father',name='$name',email='$email',homepage='$homepage',subject='$subject',memo='$memo',sitelink1='$sitelink1',sitelink2='$sitelink2',use_html='$use_html',reply_mail='$reply_mail',is_secret='$is_secret',x='$x',y='$y',category='$category' $del_que1 $del_que2 where no='$no'") or error(mysql_error());
plus_division($division);

// 일반글 -> 공지
@mysql_query("update $t_board"."_$id set division='$division',headnum='$headnum',prev_no='$prev_no',next_no='$next_no',child='$child',depth='$depth',arrangenum='$arrangenum',father='$father',name='$name',email='$email',homepage='$homepage',subject='$subject',memo='$memo',sitelink1='$sitelink1',sitelink2='$sitelink2',use_html='$use_html',reply_mail='$reply_mail',is_secret='$is_secret',x='$x',y='$y',category='$category' $del_que1 $del_que2 where no='$no'") or error(mysql_error());

// 일반->일반, 공지->공지 일때
} else {
@mysql_query("update $t_board"."_$id set name='$name',subject='$subject',email='$email',homepage='$homepage',memo='$memo',sitelink1='$sitelink1',sitelink2='$sitelink2',use_html='$use_html',reply_mail='$reply_mail',is_secret='$is_secret',x='$x',y='$y',category='$category' $del_que1 $del_que2 where no='$no'") or error(mysql_error());
                        


/***************************************************************************
* 답변글일때
**************************************************************************/
// 답글 데이타 입력;;
mysql_query("insert into $t_board"."_$id (division,headnum,arrangenum,depth,prev_no,next_no,father,child,ismember,memo,ip,password,name,homepage,email,subject,use_html,reply_mail,category,is_secret,sitelink1,sitelink2,file_name1,file_name2,s_file_name1,s_file_name2,x,y,reg_date,islevel) values ('$division','$headnum','$arrangenum','$depth','$prev_no','$next_no','$father','$child','$member[no]','$memo','$ip','$password','$name','$homepage','$email','$subject','$use_html','$reply_mail','$category','$is_secret','$sitelink1','$sitelink2','$file_name1','$file_name2','$s_file_name1','$s_file_name2','$x','$y','$reg_date','$member[is_admin]')") or error(mysql_error());    

/***************************************************************************
* 신규 글쓰기일때
**************************************************************************/

mysql_query("insert into $t_board"."_$id (division,headnum,arrangenum,depth,prev_no,next_no,father,child,ismember,memo,ip,password,name,homepage,email,subject,use_html,reply_mail,category,is_secret,sitelink1,sitelink2,file_name1,file_name2,s_file_name1,s_file_name2,x,y,reg_date,islevel) values ('$division','$headnum','$arrangenum','$depth','$prev_no','$next_no','$father','$child','$member[no]','$memo','$ip','$password','$name','$homepage','$email','$subject','$use_html','$reply_mail','$category','$is_secret','$sitelink1','$sitelink2','$file_name1','$file_name2','$s_file_name1','$s_file_name2','$x','$y','$reg_date','$member[is_admin]')") or error(mysql_error());

위를 잘 참조하시고 필드 넉넉하게 쓰세요!!!

2004년 9월 23일 목요일

내가 사랑하는 이사람....

장미 한송이러브레터(www.roselove.co.kr) 라는 사이트에서 보내온 메일내용중에 좋은 시가 있어서 올려봅니다..  

 

내가 사랑하는 이 사람.... (김은진님께서 작성하신 글입니다.)

매일 싸우다시피 한  정말 얄미운사람
화가나면 정말 무서운 사람
돌아서면 헤벌레 웃으면서 잘해주는사람

일상이 바빠 눈물이 메말랐다던 사람
그러면서도 몰래 우는 맘약한사람
곁에 믿을만한사람없다던 사람

괴롭히는것 좋아하는 사악한사람
항상 믿음을 주는 든든한사람

이런사람이 저에 곁에 있습니다

이런사람을 전 사랑하고있습니다


아무것도 해줄수 없어 아쉬움으로 남는 이 사람
이사람때문에 많은눈물을 쏟았습니다
이사람때문에 많이 웃었습니다

이사람때문에 마음이 든든했습니다
이사람이 저의 곁에 있어 너무 행복하고 감사합니다

진정한 사람을 알게해준 이 사람에게 감사합니다

행복을 나누어 준 이 사람에게 너무 감사합니다.

 

2004년 9월 12일 일요일

V-one 그런가봐요!!

요즘에서야 괜찮다고 생각 되어 자주 들을려고 하는 노래네요,,

역시 죄 지은것이 많아서 그런가..

혹시 음악파일 있으신분 공유좀 부탁드려요,,





고맙다는 그말 잘 못하는 사람
미안할땐 괜히 더 화내는 사람
통화하다 먼저 끊는사람
지난 사랑얘길 늘 하는사람

미리 해둔 약속 잘 어기는 사람
했던 얘기를 또 물어보는 사람
괜찮다고 걱정 말라하면 그말 믿는 사람 그게 나래요

그녀가 말했죠 여자를 떠나게 만드는 남자들을 아냐고
그 이유 다 갖춘사람 오 다 나래요 그래서 날 떠나갔죠

그녀는 모르죠 나 얼마나 그녈 많이 사랑한지
그녈 위해선 아마 더한 버릇도 내가 다 고쳤을텐데
그녀는 모르죠 내 모자란 자존심에 말 못했던
수많은 얘기 눈으로만 말한걸 아마 듣지도 못하고 가나봐요

말하지 않아도 내맘 아는 사람
약속에 늦어도 웃어주던 사람
작은선물 뜻없이 건네도 좋아하던 사람 그게 그녀죠

그녀는 말했죠 이별한 후에 더 차가운 여자 맘을 아냐고
만날때 후회 없었던 오 그 이유라 미련조차 없다 했죠

그녀가 떠났죠 이렇게 날 미련속에 남겨 두고
미안할 일이 너무나도 많아서 후회 뿐인 나를 두고
그녀는 떠났죠 다음 사랑 이래서는 안된다며
내 마지막은 그녀였단 얘기를 끝내 듣고도 모른체 가나봐요

그녀는 모르죠 나 얼마나 그녈 많이 사랑한지
그녈 위해선 아마 더한 버릇도 내가 다 고쳤을텐데
그녀는 모르죠 내 모자란 자존심에 말 못했던
수많은 얘기 눈으로만 말한걸 아마 듣지도 못하고 가나봐요
나의 사랑이 날두고 떠나 가요

제가 이전에 만든 플러그인 가지고 계신분들 필독!!

제가 이전에 만든 플러그인 가지고 계신분들 ..
제발 저에게 올려주시면 안될까요?

요즘 컴터와 멀어지다보니..
다시 만들기가 힘이 드네요,,

카렌다에 음력 기능 추가한것과 바이오리듬 그리고 뭐가 있더라..암튼,,제가 만든것 최종본 가지고 있다고 생각되는 분들
리플로 올려주시면 감사..감사..


2004년 9월 2일 목요일

[펌글]직장인들의 월급

출처: http://php.chol.com/~imguru/zog?no=111



위 이미지는 대부분 직장인들의 월급날인 지난 25일을 전후해 '직장인의 월급실태' '월급 명세서'라는 제목으로 인터넷에 떠돌고 있는 사진이다. 이 것은 지난 5일 새벽 일어난 개기월식 장면을 찍은 연합뉴스 사진에 한 네티즌이 본인의 월급을 달의 개기월식에 빗대어 설명을 해 놓은 것.

'명세서 상의 내 월급'을 개기월식 시작전의 보름달 모양으로 각종 세금 등 공제 전의 금액을 나타냈다. 그리고 월급에서 근로소득세, 국민연금, 의료보험 등 각종 징수를 제하는 것을 개기월식이 진행되는 과정 하나하나에 비유해 달의 모습이 보일 듯 말 듯하다. 최후로 카드값이 빠져나가고 난 후의 달의 모습은 개기월식이 완전히 진행돼 거의 보이지 않는다.

이를 본 네티즌들 대부분은 하나 같이 "진짜 동감"한다는 반응이다. 또 어떤 네티즌은 "난 첨부터 반달이다"고 부러워하기도 했다.




출처 : 도깨비 뉴스
'해뜨기전에'해뜨기전에

내 월급은 원래 부터 초승달인데요!!