회원이 적은 글에 코멘트달면 해당회원에게 쪽지로 알려주기 > Web Development

본문 바로가기
  • kb@lovelet.com
사이트 내 전체검색

RESOURCES Web Development

회원이 적은 글에 코멘트달면 해당회원에게 쪽지로 알려주기

페이지 정보

본문

==============  {{{    배포버젼 : 4.1 pl 2 (2002. 6. 19)  }}} 기준  ==============




음....
쪽지는 회원들만 주고 받음으로 발신자,수신자의 회원번호만 기입하는 관계로다
비회원이 코멘트를 작성하면 발신자의 번호에 0 이 기록되어
쪽지를 볼 수 없는 관계로 발신인은 모두 관리자가 하는 걸로 했습니다.

물론 원본글 작성자가 회원인 경우에만 쪽지를 날리구요.

문제가 있다면;; 쪽지에 html을 허용하지 않는 관계로
원본글에 바로가기 테그를 집어넣을 수가 없습니다.

의외로 쉽더군요  엄청난 디비낭비가 되지 않을까 합니다.



comment_ok.php 아래쪽에 디비클로즈(mysql_close) 바로 위쪽에다;;
-----------------------------------------------------------------------

// 원본글의 작성자가 회원일 경우(코멘트 작성자가 원본글의 작성자와 다를 경우만) 원본글의 작성자에게 쪽지 날려주기

    $check = mysql_fetch_array(mysql_query("select ismember from $t_board"."_$id where no = '$no'", $connect));
    if($check[0]>0 && $check[0]!=$member[no]) {
        $memo="$name 님이 회원님의 글에 간단한 의견을 남기셨습니다. 이 쪽지는 자동으로 발송되는 알람쪽지 입니다.\\n\\n글의 내용은 다음과 같습니다.\\n\\n".$memo."\\n\\n바로 보시려면 여기를 누르세요.$view_file_link?id=$id&page=$page&page_num=$page_num&select_arrange=$select_arrange&desc=$des&sn=$sn&ss=$ss&sc=$sc&keyword=$keyword&no=$no&category=$category";
        mysql_query("insert into $get_memo_table (member_no,member_from,subject,memo,readed,reg_date) values ('$check[0]','1','쪽지알림','$memo',1,'$reg_date')") or error(mysql_error());
        mysql_query("insert into $send_memo_table (member_to,member_no,subject,memo,readed,reg_date) values ('$check[0]','1','쪽지알림','$memo',1,'$reg_date')") or error(mysql_error());
        mysql_query("update $member_table set new_memo=1 where no='$check[0]'") or error(mysql_error());
    }

-----------------------------------------------------------------------











        ++++++++++++++++++++++++++++++++++++++++++++++++++++
        ++++아래는 바로가기 집어 넣기 수정본입니다. 2003-01-26                        ++++
        ++++comment_ok.php 아래쪽에 디비클로즈(mysql_close) 바로 위쪽에다;;  ++++
        ++++++++++++++++++++++++++++++++++++++++++++++++++++

/*************************************************************
  코멘트 달면 쪽지로 알려주기
*************************************************************/
// 쪽지 날리기 위한 제목/내용설정
    $subject = "코멘트 자동 쪽지알람";
    $memo = "<b><u><font color=blue>".$name."</font> 님이 회원님의 글에 간단한 의견을 남기셨습니다. 이 쪽지는 자동으로 발송되는 알람쪽지 입니다. 글의 내용은 다음과 같습니다.</u></b>";
    $memo = $memo."\\n\\n";
    $memo = $memo."<font color=999999>".$memo."</font>"; //코멘트부분
    $memo = $memo."\\n\\n";
    $memo = $memo."<a href=javascript:opener.location.href=\\"$view_file_link?id=$id&page=$page&page_num=$page_num&select_arrange=$select_arrange&desc=$des&sn=$sn&ss=$ss&sc=$sc&keyword=$keyword&no=$no&category=$category\\";window.close();opener.focus();><b><u>게시물로 바로 이동하시려면 여기를 누르세요.</u></b></a>";
    $memo = $memo."\\n\\n";


##########reply_mail을 사용하시고자 하시는 분은 여기부터--- 편의상 ### AA
// 원본글의 작성자가 회원일 경우(코멘트 작성자가 원본글의 작성자와 다를 경우만) 원본글의 작성자에게 쪽지 날려주기
    $check = mysql_fetch_array(mysql_query("select ismember from $t_board"."_$id where no = '$no'", $connect));
    if($check[0]>0 && $check[0]!=$member[no]) {
        //받는쪽지함에 저장(원본글작성자)
        mysql_query("insert into $get_memo_table (member_no,member_from,subject,memo,readed,reg_date) values ('$check[0]','1','$subject','$memo',1,'$reg_date')") or error(mysql_error());
        //보낸쪽지함에 저장 (최고관리자-회원번호 1)
        mysql_query("insert into $send_memo_table (member_to,member_no,subject,memo,readed,reg_date) values ('$check[0]','1','$subject','$memo',1,'$reg_date')") or error(mysql_error());
        //쪽지가 도착했습니다.
        mysql_query("update $member_table set new_memo=1 where no='$check[0]'") or error(mysql_error());
    }
#########reply_mail을 사용하시고자 하시는 분은 여기까지--- 편의상 ### AA

######################  주의 : reply_mail을 사용하시어 체크된 회원에게만 쪽지를 날리시려면 위의 AA 부분을 아래 BB로 바꿔주세요.
######################  주의 : AA, BB 둘다 적으시믄 안됩니다;; 둘중 하나만 택일하여 안쓸꺼는 지워주세요.
######################  주의 : 그리고 BB 를 사용하시면 write_ok.php 부분에서 메일날리는 부분을 없애주셔야 할꺼에요.

#########reply_mail을 사용하시고자 하시는 분은 여기부터--- 편의상 ### BB
// 원본글의 작성자가 회원일 경우(코멘트 작성자가 원본글의 작성자와 다를 경우만) 원본글의 작성자에게 쪽지 날려주기
// reply_mail도 읽어오기
    $check = mysql_fetch_array(mysql_query("select ismember,reply_mail  from $t_board"."_$id where no = '$no'", $connect));
    $if($check[1]=="1") { //원본글에 reply_mail이 체크되었을 때만 쪽지를 날립니다.)
      if($check[0]>0 && $check[0]!=$member[no]) { //원본글 작성자가회원인지 아닌지 코멘트작성자가 원본글 작성자인지 아닌지 체크
          //받는쪽지함에 저장(원본글작성자)
          mysql_query("insert into $get_memo_table (member_no,member_from,subject,memo,readed,reg_date) values ('$check[0]','1','$subject','$memo',1,'$reg_date')") or error(mysql_error());
          //보낸쪽지함에 저장 (최고관리자-회원번호 1)
          mysql_query("insert into $send_memo_table (member_to,member_no,subject,memo,readed,reg_date) values ('$check[0]','1','$subject','$memo',1,'$reg_date')") or error(mysql_error());
          //쪽지가 도착했습니다.
          mysql_query("update $member_table set new_memo=1 where no='$check[0]'") or error(mysql_error());
      }
    }
#########reply_mail을 사용하시고자 하시는 분은 여기까지--- 편의상 ### BB




        ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        ++++쪽지함에서 html을 사용할 수 있도록 코드를 수정합니다. member_memo.php ++++
        ++++++++++++++++++++++++++++++++++++++++++++++++++++++++

<?=autolink(nl2br(stripslashes(del_html($now_data[memo]))))?><br>
member_memo.php 186라인쯤의 윗부분을 아래와 같이 바꾸어 줍니다.

<?
//관리자가 보낸 쪽지면 html 적용
if($now_data[member_from]=="1") {
    echo autolink(nl2br(stripslashes($now_data[memo])))."<br>";
} else {
    echo autolink(nl2br(stripslashes(del_html($now_data[memo]))))."<br>";
}
?>


        ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        ++++쪽지함에서 html을 사용할 수 있도록 코드를 수정합니다. member_memo2.php ++++
        ++++++++++++++++++++++++++++++++++++++++++++++++++++++++

<?=autolink(nl2br(stripslashes(del_html($now_data[memo]))))?><br>
member_memo2.php 174라인쯤의 윗부분을 아래와 같이 바꾸어 줍니다.

<?
//관리자의 보낸쪽지함에 html 적용
if($member[no]=="1") {
    echo autolink(nl2br(stripslashes($now_data[memo])))."<br>";
} else {
    echo autolink(nl2br(stripslashes(del_html($now_data[memo]))))."<br>";
}
?>

Share Post:

댓글목록

등록된 댓글이 없습니다.

Sign In
OR
Don't have an account? SIGN UP

Keywords

Visits

접속자

Total Visits
1,892,498