위젯에서 자기가 쓴 글 만 보여지게 할려면 어떻게 해야하나요.
본문
Miso-post 위젯으로 자기가 쓴 글 자기만 볼 수 있도록 하고 싶은데
Widget.rows.php 보면
// 추출
$list = apms_board_rows($wset);
이렇게 써져 있는 부분이 있더라고요.
그래서 생각한게 $wset에 정보를 입력하면 그정보가 db에 쿼리에 넣어져서 sql을 날린다고 생각했어요.
그래서 보니깐 위젯 설정에 회원지정하는 곳에 멤버아이디를 넣으면 그 아이디가 쓴 글만 보이더라고요.
그래서 mb_id를 넣으면 자기가 쓴 글을 볼 수 있지않을까 생각했는데
Widget.setup.php 에서
<tr>
<td align="center">회원지정!</td>
<td>
<?php echo help('회원아이디를 콤마(,)로 구분해서 복수 등록 가능');?>
<input type="text" name="wset[mb_list]" value="<?php echo $wset['mb_list']; ?>" size="46" class="frm_input">
<label><input type="checkbox" name="wset[ex_mb]" value="1"<?php echo get_checked('1', $wset['ex_mb']);?>> 제외하기</label>
</td>
</tr>
이부분에
<tr>
<td align="center">회원지정!</td>
<td>
<?php echo help('회원아이디를 콤마(,)로 구분해서 복수 등록 가능');?>
Test:
<?php
$wset['mb_list'] = $member['mb_id'];
echo $wset['mb_list'];
?><br>
</td>
</tr>
이렇게 적으면 위젯설정에서 Test:master 이렇게 나오는데
브라우저 보면 master가 쓴 글 말고도 전체 글이 다나오더라구요.
(master 말고 다른 회원이 로그인해도 전체 글이 다 나오구요.)
그래서 쿼리가 들어가는 순서의 위치를 바꿔보면 어떨까 싶어서
Widget.php에 가서
$wset['mb_list'] = $member['mb_id'];
해도 문제 해결은 안되더라구요..
혹시나 해서
Widget.php에 $member['mb_id']; 이부분에 회원 아이디(jinny2)를 넣어 봤는데
$wset['mb_list'] = 'jinny2';
이렇게 하니 브라우저에 jinny2가 쓴 글만 보이더라구요.
$wset['mb_list'] = $member['mb_id'];
이렇게 넣으면 왜 안나올까요??
위젯에서 만약 로그인한 사람의 자기가 쓴 글만 보게 할려면 어떻게 해야할까요??
!-->!-->!-->!-->!-->
답변 3
widget.setup.php 파일은 DB 저장 전 페이지이기 때문에..
widget.rows.php 파일에서 처리하는 것이 적절합니다.
* widget.rows.php
$list = apms_board_rows($wset);
->
global $member;
if ($member['mb_id'])
$wset['mb_list'] = $member['mb_id'];
$list = apms_board_rows($wset);
apms_board_rows() 이 함수 정의된 부분을 봐야 하지 않을까요?