아이코드 sms보내기 글쓰기 페이지가 아니면 어떻게 사용해야 할까요?
본문
write_update.skin.php에
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
include_once(G5_LIB_PATH.'/icode.sms.lib.php');
// 문의글 등록시 관리자에게 전송
$send_hp_mb = "010-xxxx-xxxx"; //보내는 전화번호
$recv_hp_mb = "010-xxxx-xxxx"; //받는 전화번호
//$send_hp_mb = "*** 개인정보보호를 위한 휴대폰번호 노출방지 ***"; // 보내는 전화번호
//$recv_hp_mb = "*** 개인정보보호를 위한 휴대폰번호 노출방지 ***"; // 받는 전화번호
$send_hp = str_replace("-","",$send_hp_mb); // - 제거
$recv_hp = str_replace("-","",$recv_hp_mb); // - 제거
$send_number = "010-xxxx-xxxx"; // - 없이 입력
$recv_number = "010-xxxx-xxxx";
//$send_number = "$send_hp";
//$recv_number = "$recv_hp";
$sms_content = "안녕하세요." $wr_name."님 ".$wr_7." ".$wr_2." 에 예약이 완료되었습니다."; // 문자 내용
$SMS = new SMS; // SMS 연결
$SMS->SMS_con($config['cf_icode_server_ip'], $config['cf_icode_id'], $config['cf_icode_pw'], $config['cf_icode_server_port']);
$SMS->Add($recv_number, $send_number, $config['cf_icode_id'], iconv("utf-8", "euc-kr", stripslashes($sms_content)), "");
$SMS->Send();
alert("성공적으로 접수되었습니다.", "./board.php?bo_table=$bo_table&wr_id=$wr_id");
// 문자보내기 끝
?>
이렇게 작성하면 문제없이 sms가 발송이 되는데요
제가 humanb2box님이 만들어주신 https://sir.kr/g5_skin/16675 여기에 있는
예약 게시판을 사용하고 있습니다.
게시판에 글을 남기면 view페이지에서 예약완료로 바꿀 수 있는 버튼이 있고,
그 버턴을 누르면
<?php
include_once("./_common.php");
$wr_3 = $_GET['wr_3'];
$wr_id = $_GET['wr_id'];
$sql ="";
if($wr_3 == 3){
$sql = " update $write_table set wr_3 = '$wr_3', wr_2 = '' where wr_id = '$wr_id' ";
} else {
$sql = " update $write_table set wr_3 = '$wr_3' where wr_id = '$wr_id' ";
}
sql_query($sql);
alert("예약현황이 변경되었습니다.", G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr);
?>
이 페이지 보내고 여기서 wr_3의 값(?)에 따라 3가지의 결과값으로 보내지는데요..
제가 위 페이지의 코드에 sms코드를 넣어봤는데 작동을 안하더라고요..
<?php
include_once("./_common.php");
include_once(G5_LIB_PATH.'/icode.sms.lib.php');
$wr_3 = $_GET['wr_3'];
$wr_id = $_GET['wr_id'];
$sql ="";
if($wr_3 == 3){
$sql = " update $write_table set wr_3 = '$wr_3', wr_2 = '' where wr_id = '$wr_id' ";
} elseif ($wr_3 == 2){ // wr_3=2이면 예약완료
$sql = " update $write_table set wr_3 = '$wr_3' where wr_id = '$wr_id' ";
SMS관련 코드 복사해서 작성
}else {
$sql = " update $write_table set wr_3 = '$wr_3' where wr_id = '$wr_id' ";
}
sql_query($sql);
alert("예약현황이 변경되었습니다.", G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr);
?>
sms는 글쓰기 페이지에 있어야 작동을 하는건가요?
!-->!-->!-->
답변 3
그러면요
elseif ($wr_3 == 2){ 부분의 쿼리는 정상으로 돌아갔나요?
그부분을 exit; 로 페이지 중지시키고
echo 'test'; 이런식으로 넣어서 그부분이 정상으로 통과하는 구간인지
확인을 해보세요
일단 view.skin.php 파일에서 버튼을 누르면 예약이 완료가되고
그뒤의 특정 페이지로 이동되고 db가 업데이트되고 "예약현황이 변경되었습니다." 라는 문구가 나오겠죠?
그 파일에 sms문자 보내기 소스를 넣으셔야합니다.
지금 파일에는 상단에 include_once(G5_LIB_PATH.'/icode.sms.lib.php'); 이렇게 인클루드 하셨는데
이후의 문자를 보내는 소스가 없네요
그러니 당연히 안되는거겠죠
마지막 code에 있는 파일중에
elseif ($wr_3 == 2){ // wr_3=2이면 예약완료 하단부에있는
"SMS관련 코드 복사해서 작성" 이라고 작성한 부분에
write_update.skin.php에 있는 SMS관련 코드 그대로 복사해서 넣어놨습니다.
질문글이 너무 길면 읽기가 힘드실까봐 일부러 저렇게 작성했습니다