끝까지 간다 - 마지막회

끝까지 간다 - 마지막회

QA

끝까지 간다 - 마지막회

본문

이미 조언을 받은 것인데 해결이 잘 안되어 부득이 다시 드립니다.

모바일 뷰페이지에서 wr_필드를 수정하는 코드를 적용하였는데요..

wr_필드에는 정상적으로 잘 저장됩니다.


그런데 write_update.tail.skin.php에 있는 코드는 실행이 안되어서요,,,(pc버전에서 이상없는 코드입니다)


원래 모바일 스킨의 _common.php에는 $g5_path = "../../..";  // common.php 의 상대 경로

이렇게 있었구요..

include_once('../../../../common.php'); 이렇게 바꾼 상황입니다. 원래의 경로로 하면 인식이 안되더라구요,,, 

이것 때문에 write_update.tail.skin.php이게 실행안되는 것일까요?


뷰페이지에서 실행하는 코드는 아래와  같습니다.

<?php  

include_once "_common.php"; 



if($is_admin == 'super') { 

$write_table = $g5['write_prefix'].$_POST['bo_table']; 

sql_query("update $write_table set wr_8='$wr_8', wr_21 = '$wr_21', wr_25='$wr_25' where wr_id= '$wr_id' ");


sql_query($sql);

 

//exit;  


// 사용자 코드 실행 추가함

include_once($board_skin_path.'/write_update.skin.php');

include_once($board_skin_path.'/write_update.tail.skin.php');


?>  

<script> 

  location.href="<?php echo G5_BBS_URL."/board.php?bo_table=".$_POST['bo_table']."&page=".$_POST['page']; ?>" ; 

</script>

이 질문에 댓글 쓰기 :

답변 1

include_once($board_skin_path.'/write_update.tail.skin.php'); 


모바일에서 write_update.tail.skin.php 의 코드가 작동되지 않는 문제로 이해했습니다. 


1) 1차적으로는, 모바일에서 include 가 되기는 한 것인지 확인을 해볼 수 있을 듯 합니다.


write_update.tail.skin.php 안의 코드에.. 


echo "hello"; 


가 화면에 나오는지 등으로 확인해볼 수 있고,


2) 2차적으로는, include 되기는 했는데..


write_update.tail.skin.php 안의 코드가 모바일에서 기대했던 되로 작동하지 않는다면, 


해당파일안의 코드 중 특정 부분이, 모바일에서 동작하지 않는 것일 가능성이 크고,


언급한 include_once('../../../../common.php');  부분이 문제가 됐을 수도 있습니다.


만약에 그문제라면 주소창의 경로와 대비하여 경로체크를 하면 됩니다. ../ 은 한 단계 위 경로를 의미합니다.




마르스님, 번번이 감사합니다.
알려주신대로 해보니
1)hellow가 화면에 나왔다가 사라집니다. 인크루드는 되는거 같습니다.
2)
./../
./../../
./../../../
./../../../../
해보았는데 ./../../../가 맞는거 같습니다.

그러면 코드가 모바일에서 작동안하는 것일 수 있겠습니다...
이렇게 되어 있는데 혹시 좀 봐주실 수 있으실련지..

if (!defined("_GNUBOARD_")) exit;
include_once(G5_PATH.'/alim/alim_config.php');
include_once(G5_PATH.'/alim/alim.lib.php');

 //--------------- 관리자에게 알림  $wr_19 : 관리자 아이디, $wr_21: $write[wr_21] == '접수'

$recv_id = trim($wr_19); $income =  trim($wr_21 == '접수');


if (array_key_exists($recv_id, $damArr)) $recv_mb_id = $damArr[$recv_id];
else{
    $row = sql_fetch("select mb_id from {$g5['member_table']} where mb_id = '$recv_id' and mb_leave_date='' and mb_intercept_date='' ");
    if ($row[mb_id] ) $recv_mb_id = $row[mb_id];
}

if($recv_mb_id && $recv_mb_id != $member['mb_id'] && $income != trim($write['wr_21'] == '접수') ){


$me_memo = "접수가 있습니다";
$me_memo .=' (확인바랍니다)';

bt_writeAlim($recv_mb_id , G5_URL.'/bbs/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id,  ''.$me_memo );

}
echo "hello";

글쎄요...

눈으로만 봐서는 특별히 문제가 될만한 부분은 잘 보이지는 않습니다만..

하단의 bt_writeAlim() 부분이 모바일에서만 정상적으로 실행되지 않을 가능성이 있기는 할 것 같습니다.

모바일에서, (또는 크롬 브라우저 - 모바일 User Agent 선택 https://sir.kr/g5_tip/6436 )

echo "a";
bt_writeAlim(~);
echo "z;
exit;

식으로로 어느부분 코드까지 실행되는지..

확인하면서 문제되는 부분을 찾는게 좋지 않을까 싶습니다.

bt_writeAlim(~) 함수안에서도,

echo "c";
..
ecoh "d";
식으로 확인용 코드를 넣을 수 있습니다.

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

회원로그인

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