2026, 새로운 도약을 시작합니다.

회원정보수정시 관리자 입력값 소스 안보이게 설정하는 방법이 있나요? 채택완료

선배님들과 고수님들의 도움으로 어느정도 완성단계에 이르렀습니다.

다만 회원가입은 기본정보만 입력받고 관리자가 민감함 정보를 여분필드에 저장하여 사용하는 

방법을 취하고있습니다.

따라서 회원이 회원정보를 수정하게되면 여분필드는 아래와 같이 input hidden 값을 넘기는 방법을 취하고있습니다.

- register_form.skin.html.php 파일 내용

    <input type="hidden" name="mb_1" value="<?php echo $member['mb_1']; ?>">


한데 이러한 구성은 소스보기를 하면 값이 보이는 문제점이 있네요

- 보여지는 소스

    <input type="hidden" name="mb_1" value="ME+">

Q&A를 검색해보니 저와 비슷한경우에 사용자의 수정권한이 없는 필드는 write.update.skin 를 직접 수정하면 된다고 하신 내용이 있는데요 어떤부분을 수정해야하는지 문의드립니다.

제 파일목록에서 write.update.skin을 검색해보니 파일이 딱 하나 있고

아래와 같은 내용이 있어서 첨부하였습니다.

(참고로 이윰빌더를 추가로 설치하여 사용하고있습니다.)

/g5/eyoom/core/board/write_update.skin.php

전 아무리봐도 소스의 어디를 수정할지 모르겠네요... ㅠㅠ

그럼... 부탁드리겠습니다. 

Copy

답변 2개

채택된 답변
+20 포인트

제가 이윰은 안쓰고 있어서 그누보드 기준으로 말씀드리면

write_update.skin.php 이파일은 일반적으로 게시판 업데이트 시에

원래 그누보드 기능외에 작업자가 업데이트를 추가 저장할때 쓰입니다.

그래서 일단 제가 생각하기엔 회원정보 수정저장이랑 관련있지는 않습니다.

(이윰을 안써서 정확하지 않을수 있습니다)

회원 정보 수정은 일반적으로 /bbs/register_form_update.php 에서 저장되실텐데요

회원정보 수정 저장은 대량 435번째줄 정도에

} else if ($w == 'u') {

이부분부터 회원정보 수정 시 이벤트가 이뤄지는 곳인데요

 $sql = " update {$g5['member_table']}
                set mb_nick = '{$mb_nick}',

               ...

               mb_1 = '{$mb_1}',
               mb_2 = '{$mb_2}',
               mb_3 = '{$mb_3}',
               mb_4 = '{$mb_4}',
               mb_5 = '{$mb_5}',

이런식으로 여분필드도 같이 저장되어있게끔 되어있습니다.

제가 바케스터님의 생각처럼 작업을 해야된다고 느끼게 된다면

/bbs/register_form_update.php 파일을 수정해야됩니다.

우선 해당 회원정보수정 스킨에

관리자일때만 <input name="mb_1" 을 보이게 하고 사용자화면에선 input 을 쓰지 않습니다.

저장하는 /bbs/register_form_update.php 파일내에 위처럼 업데이트 하는 부분의 코딩을 수정합니다.

여분필드 저장하는것을 지워두고 관리자라는 조건을 더해서 여분필드를 추가로 저장합니다.

제가 주저리주저리 쓰긴했는데 이해되실지는 모르겠지만 도움이 되실까 해서 답변남겨둡니다.

혹시나 그누 버전업이나 어떠한 업데이트가 있을때 이 업데이트를 한다면 덮여쓰기가 될 수 있으니 조심하시고요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

네 알겠습니다. 알려주신내용 충분히 숙지해서 수정해보겠습니다.. 답변감사합니다..
개노미님하고 저랑 거의 같은 맥락의 의견입니다.

댓글을 작성하려면 로그인이 필요합니다.

관리자가 여분필드를 운영한다면 사용자한테는 보이거나 수정할 필요가 없을테니

skin구간에서 mb_1 구간을 지우셔도 무방해 보이구요

위 올려주는 코드는 게시판구간인 듯 하여 저부분이 아닌 /bbs/register_form_update.php 이 구간으로 데이터를 전송할텐데

/bbs/register_form_update.php

Copy


else if ($w == 'u')

위 구간을 찾으셔서 update문에서 mb_1~10 등 필요없는 구간을 제거하시는게 좋아보여요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

네.... 관리자수정과 사용자수정구간을 달리 보고 해보라시는거죠? 알려주신파일 수정해보겠습니다. 답변 감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고