옵션 필드 사용에 관한 질문입니다. > 그누3질답

그누3질답

옵션 필드 사용에 관한 질문입니다. 정보

그누보드 옵션 필드 사용에 관한 질문입니다.

본문

- 해결했습니다^^ 답변해주신 카이루님 감사드립니다 -






안녕하세요. 그누 왕초짜입니다.
제목을 잘 정한건지 모르겠네요;;

회원가입시 mb_1 에 닉네임을 입력받고 이 닉네임을 게시판에 글 작성시 wr_name 에 name 대신에 입력되게 했습니다.

gbform.skin.php 에서는

<? if ($is_name) { ?><tr><td bgcolor=#f2f2f2 align=right><span class=skin_tt>NAME</span></td><td><input type=text name='wr_name' size=15 maxlength=20 required itemname='이름' value='<?=$write[mb_1]?>' class=input></td>
<tr><td colspan=2 height=1 bgcolor=#D4CFC3></td></tr><? } ?>

으로 바꿔서 이름 값에 mb_1 값이 들어가게 했습니다.

gblist.skin.php 에서 이 값을 불러줄때는 <?=$list[$i][wr_name]?> 으로 불러오고,
gbview.skin.php 에서 작성자 보여주는 부분에는 <?=$mb[mb_1]?> 으로 불러왔습니다.

정리하자면, 회원가입시 이름은 aaaaa로 하고, mb_1 을 a 라고 하면

게시판에 글을 쓸 때 wr_name 값에 a 가 들어가고, 리스트에서 작성자가 이름 대신 a 로 뜹니다.
글읽기에서도 이름 대신 a 가 뜹니다.

여기까지는 문제가 없는데,

이렇게 하면 이름대신 쓰는 아이콘을 보여 줘야 하는 회원은 아이콘을 보여줄 수가 없더군요...;; 일단 관리자들만 아이콘으로 표시되면 되는데, 이 부분을 못하겠습니다.;;

일단 허접한데로

<?
if ($member[mb_level] >= 5) { echo "<?=$list[$i][name]?>";} else { echo "<?=$list[$i][wr_name]?>";}
?>

이렇게 해봤는데, 이러면 읽는 사람의 레벨에 따라 작성자의 이름 혹은 닉네임이 출력되는 방식인 거 같습니다;; 그나마 작동도 잘 안 되더라구요...;; 고수님들의 가르침 부탁 드립니다.


사설이 길었는데요 ^^;; 정확히 말하자면

게시판에 글을 작성한 사람이 레벨 5보다 높거나 같으면 이름이나 아이콘, 5 미만이면 닉네임이 뜨게 하고 싶습니다.

댓글 전체

<? if ($is_name || $mb[mb_1]) { ?><tr><td bgcolor=#f2f2f2 align=right><span class=skin_tt>NAME</span></td><td><input type=text name='wr_name' size=15 maxlength=20 required itemname='이름' value='<?
    if ($member[mb_level] <= 5 && $mb[mb_1]) { echo "$write[mb_1]";}
    else echo "$name";
?>' class=input></td>
<tr><td colspan=2 height=1 bgcolor=#D4CFC3></td></tr><? } ?>

ㅋㅋㅋ 편법으로 하셔다니 다행이네요... ^_^
아;; 그런 방법이 있었군요 ^^ 감사합니다.

근데 지금 방식으로 하면 게시판 스킨 전체를 일일이 바꿔줘야 되었네요 ^^;; 그래서 약간 편법으로 아예 회원이 가입이나 수정할 때 이름 부분을 닉넴이라고 알고 입력하게 하고, 닉넴을 이름이라고 알게 하고 쓰니까 해결됐습니다 편법이라 좋은 방법은 아니지만요 ^^;;

카이루님 답변 덕에 PHP 아무 것도 모르는 초짜가 또 한가지 배웁니다. 저렇게 검사해줄 수도 있군요. 정말 감사드립니다 ^^
<? if ($is_name || $mb[mb_1]) { ?><tr><td bgcolor=#f2f2f2 align=right><span class=skin_tt>NAME</span></td><td><input type=text name='wr_name' size=15 maxlength=20 required itemname='이름' value='<?
    if ($member[mb_level] <= 5) { if(!$mb[mb_1]) {echo "$name"} else echo "$write[mb_1]";}
    else echo "$name";
?>' class=input></td>
<tr><td colspan=2 height=1 bgcolor=#D4CFC3></td></tr><? } ?>
<?=$write[mb_1]?> ==>> 이런식으로 해보세요..

<?
    if ($member[mb_level] <= 5) { echo "$write[mb_1]";}
    else echo "$name";
?>
네 write 나 mb 나 둘 다 정상작동은 하는데요 ^^;;
게시판에 글을 작성한 사람이 레벨 5보다 높거나 같으면 이름이나 아이콘, 5 미만이면 닉네임이 뜨게 하고 싶어요 ^^;;
관심 가져주셔서 감사드립니다 ^^ 조금만 더 도와주세요 ㅠ.ㅠ
전체 9,564
그누3질답 내용 검색

회원로그인

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