아이코드 sms보내기 글쓰기 페이지가 아니면 어떻게 사용해야 할까요?

아이코드 sms보내기 글쓰기 페이지가 아니면 어떻게 사용해야 할까요?

QA

아이코드 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'; 이런식으로 넣어서 그부분이 정상으로 통과하는 구간인지

확인을 해보세요

정상으로 돌아가는건 확인해봤습니다.

elseif ($wr_3 == 2){
print_r ('aa');
$sql = " update $write_table set wr_3 = '$wr_3' where wr_id = '$wr_id' ";
        //exit; exit를 넣으면 aa가 출력된 페이지에서 멈춰있습니다.
}

이렇게 작성하면 aa가 출력되고 완료로 변경됩니다.


그런데 exit를 넣으면 멈춰버려서 확인인 불가능하더라고요

제가 잘 몰라서 혹시나 하는 마음에 적습니다..

정상으로 넘어갈때와 SMS코드를 넣었을 경우 크롬 네트워크로
Query String Parameters를 보면

// 정상
bo_table:reservation
wr_id:26


//SMS코드 넣었을 경우
bo_table:reservation
wr_id:26
wr_3:1
(empty)

이렇게 출력되는데 혹시나 여기에 이유가 있을까봐요;;

정상일때는 wr_3값이 안넘어가는데 sms는 넘어가네요..



아니면 write_update.skin.php의 상단에 있는

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가

이게 없어서 일까요?

일단 view.skin.php 파일에서 버튼을 누르면 예약이 완료가되고

그뒤의 특정 페이지로 이동되고 db가 업데이트되고 "예약현황이 변경되었습니다." 라는 문구가 나오겠죠?

그 파일에 sms문자 보내기 소스를 넣으셔야합니다.

지금 파일에는 상단에 include_once(G5_LIB_PATH.'/icode.sms.lib.php'); 이렇게 인클루드 하셨는데

이후의 문자를 보내는 소스가 없네요

그러니 당연히 안되는거겠죠

elseif ($wr_3 == 2){ // wr_3=2이면 예약완료 아래에 있는

"SMS관련 코드 복사해서 작성"

이라고 적어놓은 부분에

write_update.skin.php에 있는SMS관련 소스를 넣어놨습니다.

코드상에 너무 길어서 일부러 저렇게 작성했어요..

마지막 code에 있는 파일중에

 

elseif ($wr_3 == 2){ // wr_3=2이면 예약완료 하단부에있는

 

"SMS관련 코드 복사해서 작성" 이라고 작성한 부분에

 

write_update.skin.php에 있는 SMS관련 코드 그대로 복사해서 넣어놨습니다.

 

질문글이 너무 길면 읽기가 힘드실까봐 일부러 저렇게 작성했습니다

답변을 작성하시기 전에 로그인 해주세요.
전체 131
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT