묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
messageXE II 관련하여 로그인 회원에 문자 발송 php
2014.02.20 01:07
안녕하세요,,
xe로 간단한 작업밖에 할 줄 모르는 초보입니다.
제작의뢰를 해야 하는 내용이 아닌가 싶습니다만, 우선 죄송하지만 고수님들께도 도움을 부탁드려 봅니다.
지금 만들고 있는 홈피에서, messageXE II를 이용해서 회원가입 직후 회원의 전화번호로 안내문자를 발송하려고 하는데요,
제작사인 coolsms의 매뉴얼에 나와있는 별도 php를 파일(예를들어 sendsms.php)로 만들어서 회원가입직후 이동 페이지에서 호출해서 발송하려고 합니다.
문제는 messageXE II는 전화번호를 member 테이블이 아닌 authentication_member 테이블에 저장합니다.
authentication_member 테이블에는 회원번호와 전화번호 등이 들어있고요, 아래와 같습니다.
member_srl clue
177 01012345678
그러니까, 현재 로그인한 (회원가입을 하면 자동으로 로그인이 되니까요..) 회원의 member_srl을 받아와서
authentication_member에서 비교하여 clue 값을 가져온 다음에,
제일 아래 첨부한 php 예제에 사용된 $rcvno (수신번호)에 넣어줘야 할 것 같습니다.
결국 php를 이용해서 db 값을 가져오는 작업인데요.. 제가 정말 아는게 하나도 없어서 도움을 부탁드립니다.
간단한 힌트나 팁, 관련 링크도 정말 감사하겠습니다.
감사합니다.
<?php
/**
* vi:set ts=4 sw=4 expandtab enc=utf8:
* Copyright(C) 2008-2010 D&SOFT
* http://open.coolsms.co.kr
*/
header("Cache-Control: no-cache");
?>
<html lang="ko" xml:lang="ko" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<?php
require_once("coolsms.php");
/**
* 아래의 절차로 문자메시지를 보낼 수 있습니다.
*
* 1) $sms = new coolsms(); // 객체생성
* 2) $sms->appversion("프로그램명/버젼"); // 프로그램명/버젼 설정(생략가능).
* 3) $sms->charset("euckr 혹은 utf8"); // 한글 인코딩 설정.
* 4) $sms->setuser("아이디", "비밀번호"); // 계정정보 세팅
* 5) $sms->addsms("받는번호", "회신번호", "메시지"); // 보낼 메시지목록에 추가
* 6) $sms->connect(); // 서버에 연결
* 7) $sms->send(); // 메시지 전송
* 8) $sms->disconnect(); // 연결 해제
*
*/
/**
* coolsms 객체를 생성합니다.
*/
$sms = new coolsms();
/**
* 프로그램명과 버젼을 입력합니다. (생략가능합니다.)
* 형식: 프로그램명/버젼 (프로그램명: 반드시 영어로, 버젼: x.x.x 와 같은 형식)
* 입력예: TEST/1.0
**/
$sms->appversion("TEST/1.0");
/**
* 한글 인코딩 방식을 설정합니다. (생략시 기본으로 euckr로 설정됨)
**/
$sms->charset("utf8");
/**
* 아이디/비밀번호를 설정합니다. (쿨에스엠에스(www.coolsms.co.kr)에서 가입하신 아이디, 비밀번호를 넣어줍니다.)
*/
$sms->setuser("siteproducer", "cooledu2014");
/**
* 보낼 문자 추가하기
*
* -- 유의사항 --
* 1) 최대 보낼 수 있는 문자의 길이는 80바이트이며 초과시 80바이트 이내 문자만 전송됩니다.
* 2) 예약일시가 현재일시보다 작을 경우 바로 전송됩니다.
* 3) 갯수에 제한없이 addsms 호출로 보낼 문자목록에 계속 추가할 수 있습니다.(send 호출시 모두 전송됩니다.)
*
* @param $rcvno 받는번호 ; 받는 사람의 핸드폰 번호
* @param $callback 회신번호 ; 보내는 사람의 연락처 (핸드폰 및 일반전화번호)
* @param $message 문자내용
* @param $callname 참조용 이름 ; www.coolsms.co.kr [전송결과] 에서 조회 가능. (생략가능)
* @param $reservdate 예약일시 ; YYYYMMDDHHMISS 형식의 예약일시, 현재시각보다 작을 경우 바로 전송 (생략가능)
*
* Examples)
* // 일반적인 발송
* $sms->addsms($rcvno, $callback, $message);
* // 아무개에게 발송 (참조용; 쿨에스엠에스 전송결과 페이지에서 이름으로 확인 가능)
* $sms->addsms($rcvno, $callback, $message, "아무개");
* // 아무개에게 2008년 05월 20일 13시 20분 01초에 발송예약
* $sms->addsms($rcvno, $callback, $message, "아무개", "20080520132001");
*
**/
if (!$sms->addsms("수신번호", "발신번호", "문자메시지 내용")) {
// 오류처리
echo $sms->lasterror();
}
/**
* 서버에 연결합니다.
**/
if (!$sms->connect()) {
// 오류처리
echo "서버에 접속할 수 없습니다.";
exit(1);
}
/**
* 추가된 문자를 모두 전송합니다.
**/
$nsent = $sms->send();
// 오류검사
if ($sms->errordetected()) {
echo "오류가 발생했습니다 : " . $sms->lasterror();
}
/**
* 연결을 끊습니다.
*/
$sms->disconnect();
/**
* 결과를 출력합니다.
* $sms->getr(); 으로 발송결과 array를 가져와서 사용할 수 있음. ($sms->printr() 함수 참조)
*/
echo "{$nsent} 건에 대한 전송내용을 출력합니다.<br />";
$sms->printr();
/**
* 메시지목록을 비워줍니다.
**/
$sms->emptyall();
?>
</body>
</html>
<script>
location.href = "리다이렉트 주소";
</script>
댓글 2
-
Summer
2014.02.20 12:03
if (!$sms->addsms("수신번호", "발신번호", "문자메시지 내용")) {// 오류처리echo $sms->lasterror();}이부분을$logged_info = Context::get('logged_info');$member_srl = $logged_info->member_srl;$oDB = &DB::getInstance();$query = $oDB->_query("SELECT clue FROM authentication_member WHERE member_srl = '$member_srl' LIMIT 1");$result = $oDB->_fetch($query);$user_number = $result->clue;if (!$sms->addsms("$user_number", "발신번호", "문자메시지 내용")) {// 오류처리echo $sms->lasterror();}이런식으로 하면되는데저 모듈을 사용해보진 않아서 확실히는 모르겠네요 -
siteproducer
2014.02.26 10:31
와.. 감사합니다! 능력자시네요!^^