웹마스터 팁

개인쪽지발송!~

2009.06.23 09:44

noirzo

그룹쪽지 발송을 위해서 우선은 개인발송 테스트로 만든 소스 공유 합니다.

( 사실 ㅡ.ㅡ:: 이렇게 하면 안되는데 딱히 제로보드XE 구조를 몰라서 ;;;; )

 

아래의 소스를 message.php 저장을 하시고요!~

 

제로보드XE 설치폴더 밑에 저장하세요~ (아무곳이나 저장해도 상관 없을꺼예요)

 

그런다음에 http://주소/제로보드XE설치폴더/message.php 하시면 바로 해당 회원에게 쪽지 발송이 됩니다.

 

<?

/* 초기설정 (아래내역 작성하여 주세요) */

$admin_user = "";             //관리자 아이디를 입력하여 주세요
$dbhost = "localhost";             //호스트를 입력   
$dbid = "";               //접속계정
$dbpass = "";            //비밀번호
$dbname = "";              //DB네임
$xe_url = "/usr/local/apache_2.0.63/htdocs/slot/config/config.inc.php"; //config.inc.php 파일이 있는 절대경로(이건 제껄 예로 든거예요 저기서 slot 이 zbxe 설치폴더)


/* 제로보드XE 연동 */

 define('__ZBXE__',true);
 require_once($xe_url);
 $oContext = &Context::getInstance();
 $oContext->init();

 $user_id = $logged_info->user_id;

?>

 <meta http-equiv="content-type" content="text/html; charset=utf-8">

<?

 //관리자체크
 if($user_id!=$admin_user){

  echo "<script>alert('관리자만 접근이 가능 합니다.')</script>\n";
  exit;

 }

 

/* DB 접속 */

 $connect=mysql_connect($dbhost,$dbid,$dbpass);
 mysql_select_db($dbname, $connect);
 mysql_query("set names utf8", $connect); //문자셋 utf8 접속


/* 시간 */

 $regdate=time();

/* 함수 정의 */

//보내는회원, 받는회원, 제목, 내용, 발송시간
function message_send($sender_srl,$receiver_srl,$title,$content,$time){

 $i=2;
 $idate = date("YmdHis",$time);

 //테이블락
 mysql_query("lock tables xe_sequence write, lock tables xe_member_message write");

 //증가값 추가
 mysql_query("INSERT INTO xe_sequence (seq) VALUES (NULL),(NULL),(NULL);");
 
 //마지막 추가한 증가값 3개 가져옴
 $result = mysql_query("SELECT * FROM xe_sequence ORDER BY seq DESC LIMIT 0 , 3");

 //증가값 대입
 while ($row = mysql_fetch_object($result)) {

  $seq[$i] = $row->seq;
  $i--;

 }

 $seq[3] = $seq[0] * -1; //$seq[0] 동일
 $seq[4] = $seq[2] * -1; //$seq[2] 동일

 //메세지삽입
 mysql_query("INSERT INTO xe_member_message (message_srl ,related_srl ,sender_srl ,receiver_srl ,message_type ,title ,content ,readed ,list_order ,regdate) VALUES ($seq[0], 0, $sender_srl, $receiver_srl, 'R', '$title', '$content', 'N', $seq[3], '$idate');");

 mysql_query("INSERT INTO xe_member_message (message_srl ,related_srl ,sender_srl ,receiver_srl ,message_type ,title ,content ,readed ,list_order ,regdate) VALUES ($seq[1], $seq[0], $sender_srl, $receiver_srl, 'S', '$title', '$content', 'N', $seq[4], '$idate');");

 //락해제
 mysql_query("UNLOCK TABLES");

}

/* 개인 메세지 발송 (요기부터 작성하시면 됩니다) */

$title = "쪽지 테스트!!~";
$content = "흠냥!! ㅡ.ㅡ";

//보내는회원_srl, 받는회원_srl, 쪽지제목, 쪽지내용, 보내는시간(자동입력)
message_send(4,18343,$title,$content,$regdate);

echo "<script>alert('쪽지 발송 완료')</script>\n";

mysql_close($connect);

?>

 

위에 보시면 $title 변수에 제목을 넣어 주시고요, $content 변수에 내용을 넣어 주시면되요(태그포함)

 

message_send(4,18343,$title,$content,$regdate); <-- 이함수로 발송을 하거든요 ㅡㅡa

 

보시는 것 처럼 인수는 보내는회원_srl, 받는회원_srl, 쪽지제목, 쪽지내용, 보낸시간 입니다.

 

제목이랑, 내용은 작성이 가능하실줄 알고요, 시간은 그대로 두셔도 됩니다(발송시간을 변경 하고 싶으시면 ㅡㅡa 소스보고 수정을)

 

srl 궁금하실것 같으신데요

 

srl = id 랑 매치되는 고유 번호 인데요 ㅡㅡa 보통 쪽지 보내기 하면은 마지막 url 보시면 srl=번호 이렇게 되어 있습니다.

 

ㅡㅡa 아이디로 넣어서 함수에서 처리 할까 했는데 제가 하고 싶은건 그룹발송이라 일단은 그냥 대충 ;;;;

 

저렇게 하고 그냥 불러 오시면 바로 쪽지 발송이 가능 합니다.

 

 

제목 글쓴이 날짜
회원 순위 공동순위 표시해서 뽑기(원리만 소개) 라르게덴 2009.02.13
주민등록 입력 폼 1.2.0 [55] file 개돌 2009.04.10
개인쪽지발송!~ noirzo 2009.06.23
까오천사님의 만기일 팁을 1.2.4에 맞게 수정했어요. [15] file 도파 2009.08.27
-추가- 당신의 XE 기반 홈페이지를 훅가게 하는 방법 4가지 [26] 老姜君 2009.10.08
Apache,PHP,MySQL,Zend,OpenSSL,PEAR 설치 메모 [1] 엘카 2009.12.03
최신 댓글 보여주는 기능에 관련해 손정호547 2009.12.11
첨부파일이 용량에 따라 등록되기도 하고 안되기도 할 때 해결방법 (웹호스팅) [1] 꽃들 2010.01.02
APM_Setup 7 사용자중에서 첨부 파일 업로드시 100%에서 사라지는 문제 [2] 레드파카 2010.01.04
간단한 시간제한 자료실 만들기 [2] 옥수수밭 2010.03.17
파일 첨부 에러로 고생하시는 분 [2] celli29 2010.05.11
레이아웃 삽입 후 최근 설문조사 가져오기 ilovesyr 2010.05.18
첨부파일 100% 에서 사라지는 문제 저도 해결 [2] 안나오네 2010.06.09
회원확장정보 변수 (출처:sMaker) [5] 시니시즘 2010.07.19
레이아웃 편집, 게시판 상/하단 내용에 위젯 스타일 적용하기 [2] LutZ 2010.09.12
큐브리드(CUBRID) 초보자 학습 자료 및 유용한 링크 정리 file 면스판 2010.11.09
메인화면에 설문조사 위젯(?) 만들기 [3] file 3D매니아 2010.12.14
자동 스크롤 메뉴 (끄기 기능, 무한 스크롤 X) [6] ☺심심 2004.05.02
textarea 입력받는 글자수 제한하는 스크립트 [5] 오기 2002.01.17
문자열 길이(byte)에 따라 자르기... 행복한고니 2002.10.11