로그인시에도 게시판 글쓰기할때 자신의 이름을 바꿀수 있게 하려고 합니다.

로그인후에도 글수정시 자신의 이름을(혹은 닉네임) 바꾸거나 그대로 두거나 하려고 합니다.
아래와 같은코드를 적용했는데도 안나타 납니다.
제가 무슨 잘못한게 있는지요?
 
아래 적용코드
 
<? if ($is_member && !$is_admin) { //--관리자또는 로긴한회원 수정시  이름을 끄집어와라?>
<tr>
    <td style='padding-left:20px; height:30px;'>· 이름</td>
    <td><INPUT class='field_pub_01' maxLength=20 size=20 name=wr_name itemname="이름" required value="<?=$member[mb_name]?>">
 </td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? if ($is_name) { ?>
<tr>
    <td style='padding-left:20px; height:30px;'>· 이름</td>
    <td><INPUT class='field_pub_01' maxLength=20 size=15 name=wr_name itemname="이름" required value="<?=$name?>">
 </td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
|

댓글 20개

<? if ($is_member && !$is_admin) { //--관리자또는 로긴한회원 수정시 이름을 끄집어와라?>
윗부분부터 고쳐보세요. //뒤가 모두 코멘트로 처리되니까...;; //--관리자또는 로긴한회원 수정시 이름을 끄집어와라 <--이부분 지우고 해보세요..
마찬가지 입니다..
만약 위의 경우가 아니라면 $is_member 가 정의되지 않은듯 하니 common.php 인클루드 시켜주시고용;;
저것이 사용되는것이 보드스킨에 write,skin입니다.
따로 정의안해줘도 되는거 아닌가요?
그리고 wr_name 이 두번 사용되었는데, 이러면 에러나요... 의도하신바가 다음이 아닌지...

<? if ($is_member && !$is_admin) { ?>
<? if ($is_name) { ?>
<tr>
<td style='padding-left:20px; height:30px;'>· 이름</td>
<td><INPUT class='field_pub_01' maxLength=20 size=20 name=wr_name itemname="이름" required value="<?=$member[mb_name]?>">
</td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
<? } ?>

위처럼만 하시면 될듯 싶습니다..
비회원은 아래와같이 사용하게 합니다.
<? if ($is_name) { ?>
<tr>
<td style='padding-left:20px; height:30px;'>· 이름</td>
<td><INPUT class='field_pub_01' maxLength=20 size=15 name=wr_name itemname="이름" required value="<?=$name?>">
</td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
그렇다면 else if 를 사용하셔야 합니다.

<? if ($is_member && !$is_admin) { //--관리자또는 로긴한회원 수정시 이름을 끄집어와라?>
<tr>
<td style='padding-left:20px; height:30px;'>· 이름</td>
<td><INPUT class='field_pub_01' maxLength=20 size=20 name=wr_name itemname="이름" required value="<?=$member[mb_name]?>">
</td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } else if (!$is_member && $is_name) { ?>
<tr>
<td style='padding-left:20px; height:30px;'>· 이름</td>
<td><INPUT class='field_pub_01' maxLength=20 size=15 name=wr_name itemname="이름" required value="<?=$name?>">
</td></tr>
<tr><td colspan=2 height=1 bgcolor=#e7e7e7></td></tr>
<? } ?>
많은 답변 너무 감사드립니다.
위와같이 적용을 했는데도 똑같이 안나옵니다...input 박스도 안나오는것이 이해가 안됩니다..ㅡ.ㅜ;;
^^...스킨에서 손보셔도 아니되시옵니다...

bbs/write_update.php..................

if ($w == "" || $w == "r")
{ //원글이나 답글일때
if ($member[mb_id])
{
$mb_id = $member[mb_id];
$wr_name = $board[bo_use_name] ? $member[mb_name] : $member[mb_nick];
$wr_password = $member[mb_password];
$wr_email = $member[mb_email];
$wr_homepage = $member[mb_homepage];
}
else
{
$mb_id = "";
// 비회원의 경우 이름이 누락되는 경우가 있음
if (!trim($wr_name))
alert("이름은 필히 입력하셔야 합니다.");
$wr_password = sql_password($wr_password);
}


else if ($w == "u") //수정일때
{
if ($member[mb_id])
{
// 자신의 글이라면
if ($member[mb_id] == $wr[mb_id])
{
$mb_id = $member[mb_id];
$wr_name = $board[bo_use_name] ? $member[mb_name] : $member[mb_nick];
$wr_email = $member[mb_email];
$wr_homepage = $member[mb_homepage];
}
else
{
$mb_id = $wr[mb_id];
$wr_name = $wr[wr_name];
$wr_email = $wr[wr_email];
$wr_homepage = $wr[wr_homepage];
}
}


이부분을 참조해 보세요...^^
헉....이부분이 최신버전에서 바뀐건가요?

어쩐지....ㅡ.ㅜ;; 예전버전에서는 분명히 저렇게 해서 사용을 했는데 갑자기 안되어서 쳇바퀴 몇바퀴 돌았습니다.

감사합니다.
$wr_name = $board[bo_use_name] ? $member[mb_name] : $member[mb_nick]; 부분이네여;;;; 역시 고수는 척하면 척이네요 ㅎㅎ;
그럼 $wr_name = $wr[wr_name]; 이부분을 $wr_name = $wr[mb_name]; 하면 되는건가요?
TOGETHER 님 저도 도움좀 부탁드립니다ㅠ_ㅠ; http://www.sir.co.kr/bbs/tb.php/g4_qa/65542/8b5206f093492f5fdf75dc33e5fcf0ff
신경써주셔서 채택을 해드려야 하는데 정답에 가까운핵심을 알려주신 두개더 님께도 실례인것 같아서 앵무나라님에게는 다음에 꼭 해드리겠습니다.
감사합니다.
ㅎㅎ 저도 하나 배웠습니다ㅇ_ㅇ;;
헉~~~!
안주셔되는데.....ㅋ.ㅋ
감사히 꾸울꺽 하겠습니다....^^
죄송합니다. 저도 세션부분은 잘 모릅니다.
아마도 이부분을 해결하시려면 스킨에서 입력 및 수정할 수 있도록 하시고 write_update.skin.php에서
해당글에 입력받은 값을 다시 업데이트 하도록 하시면 해결되겠습니다....^^
넵..지금 그렇게 작업중입니다..
신경써주셔서 감사합니다.^^
이전에 쌍둥이게시판 기능을 활용할 때 write_update.skin.php에 작성했던 내용이,
fusion스킨의 배포시 남겼던 구문이 있습니다.
[http://www.sir.co.kr/geditor/data/0707/fusion_twinbbs.jpg]

상단주소의 그림처럼 게시물 수정모드라면,
/bbs/write_update.php의 필드(여분필드 포함)를 끌어와 그것을 전체적으로 갱신하는 방법이 있습니다.

물론 그 조건문에는 /bbs/write_update.php에 다루어 졌듯이,
if ($w == 'u') { //수정된 글에 대해서만 적용하려면
if (($write[mb_id] == $member[mb_id]) || $is_admin) {
"실행구문";
} else {
"일반조건에 따른 실행구문";
}
}
~ 과 같은 조건문이 명시되어야 한다는 것은 지극히 당연한 얘기가 됩니다.
댓글을 작성하시려면 로그인이 필요합니다. 로그인

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
18년 전 조회 1,527
18년 전 조회 1,426
18년 전 조회 1,516
18년 전 조회 1,581
18년 전 조회 1,537
18년 전 조회 1,781
18년 전 조회 1,165
18년 전 조회 1,616
18년 전 조회 1,002
18년 전 조회 1,561
18년 전 조회 2,012
18년 전 조회 924
18년 전 조회 1,693
18년 전 조회 1,552
18년 전 조회 1,600
18년 전 조회 1,751
18년 전 조회 1,214
18년 전 조회 1,903
18년 전 조회 1,541
18년 전 조회 1,566
🐛 버그신고