다른곳에서 자신의 회원 정보를 수정하려면 어떻게 해야할까요?

회원 정보 여분필드 mb_7 ~ mb_10 까지를 사용합니다.
 
일단, 쿼리를 날리는 곳은 최근 게시물 스킨에서 입니다.
 
최고관리자가 아닌 테스트ID로 로그인 했습니다.
 
$mb_10 = 100;
 
    $mb = get_member($mb_id);
    $sql = " update $g4[member_table]
                set mb_8 = '$mb_8',
                     mb_9 = '$mb_9',
                     mb_10 = '$mb_10' ";
    sql_query($sql);
 
요렇게 한번 해봤는데요^^;;
 
최고 관리자로 로그인 후 그 테스트ID의 정보를 보니
여분필드 10번에 "100"이라는 값이 들어갔길래 좋아했습니다.
근데, 다른 모든 회원의 여분필드 10번에도 "100"이 들어갔네요ㅠㅠ
 
쿼리를 날리는 걸 제가 잘 몰라서요.. 제가 뭘 빼먹어서 그런것 같은데..
 
어떻게 하면 자기 회원정보만 수정이 되는지 알고싶습니다. 
 
|

댓글 7개

where 절이 빠졌네요 where mb_id = '자기아이디'
전체적인 sql 문은

$sql = " update $g4[member_table]
set mb_8 = '$mb_8',
mb_9 = '$mb_9',
mb_10 = '$mb_10 where mb_id =$member[mb_id]' ";

ㅎㅎ
안되네요.. mb_10을 출력해보면
일단, mb_10에 100이라는 값을 넣고 쿼리를 날렸다면
100 where mb_id = <== 요렇게 들어갔어요..
무지개님 답변에서 '이 하나 빠졌습니다....

$sql = " update $g4[member_table]
set mb_8 = '$mb_8',
mb_9 = '$mb_9',
mb_10 = '$mb_10
where mb_id = '$member[mb_id]' ";
천상재회님 답변에서도 '이 하나 빠졌습니다....

$sql = " update $g4[member_table]
set mb_8 = '$mb_8',
mb_9 = '$mb_9',
mb_10 = '$mb_10'
where mb_id = '$member[mb_id]' ";
하하하..

점점 ^^
최근게시물스킨 파일에서는 $member 배열을 바로 쓸 수 없습니다.
쓰시려면 global 선언을 해 주셔야 합니다.
위 쿼리를 쓰시려면 로그인된 회원id 를 가져와야 하는데 그럴 수 없으니 제대로 작동하지 않는겁니다.

global $member;
$sql = "update $g4[member_table]
set mb_8 = '$mb_8',
mb_9 = '$mb_9',
mb_10 = '$mb_10' where mb_id='$member[mb_id]'";
sql_query($sql);

이렇게 하시면 될겁니다.

근데 $mb_8,$mb_9,$mb_10 값은 따로 있는건가요?
단순히 위 코드만으로는 이 값이 없을텐데요...
크아.. 드디어 되네요^^
모두들 정말 감사합니다^^
댓글을 작성하시려면 로그인이 필요합니다. 로그인

그누4 질문답변

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

+
제목 글쓴이 날짜 조회
19년 전 조회 1,832
19년 전 조회 1,513
19년 전 조회 1,570
19년 전 조회 1,510
19년 전 조회 5,209
19년 전 조회 1,605
19년 전 조회 1,583
19년 전 조회 1,521
19년 전 조회 2,296
19년 전 조회 1,433
19년 전 조회 1,770
19년 전 조회 1,668
19년 전 조회 1,540
19년 전 조회 1,546
19년 전 조회 1,609
19년 전 조회 1,590
19년 전 조회 1,794
19년 전 조회 1,749
19년 전 조회 1,537
19년 전 조회 1,589
🐛 버그신고