최근게시물에 열람권한 적용하기 (소스수정)
본문
게시판 리스트 스킨 (list.skin.php) 에 아래 소스를 적용해서, wr_10 == '전부공개' 인 경우가 아니면
5레벨 이상의 정회원만 열람 가능하도록 적용을 했습니다.
<?php
if($list[$i]['wr_10']=='전부공개'){
echo "<a href='".$list[$i]['href']."'>";
echo $list[$i]['icon_reply'] ;
if (isset($list[$i]['icon_secret'])){ echo rtrim($list[$i]['icon_secret']);}
echo $list[$i]['subject'] ;
echo "</a>";
}else{
if ($member['mb_level'] > 4) {
echo "<a href='".$list[$i]['href']."'>";
echo $list[$i]['icon_reply'] ;
if (isset($list[$i]['icon_secret'])){ echo rtrim($list[$i]['icon_secret']);}
echo "<span style='color:#ccc;'>[m] </span>";
echo $list[$i]['subject'] ;
echo "</a>";
}else{
echo "<span style='color:#ccc;'>[m] </span>";
echo $list[$i]['subject'] ;
}
}
?>
이 부분을 최근게시물에도 적용하려면 어떻게 수정해야 할까요?
위에 list.skin.php 에 적용된 소스를 활용하여 해당게시물의 wr_10이 전부공개인 경우에만
모두가 볼 수 있고, 그 외에는 정회원 (5등급) 이상인 회원만 볼 수 있는 최근게시물로 적용하고 싶습니다.
아래 소스가 현재 사용중인 최근게시물의 리스트 부분 입니다.
<ul>
<?php for ($i=0; $i<count($list); $i++) { ?>
<li class="l_sub">
<?php
if ($list[$i]['is_notice']) {
$notice_class = "class='notice_class' ";
$txt = "<i class='fa fa-volume-up' aria-hidden='true'></i> ";
} else {
$notice_class = "";
$txt = "";
}
echo "<a href='{$list[$i]['href']}' {$notice_class}>";
echo $txt;
echo $list[$i]['subject'];
echo "</a>";
if ($list[$i]['comment_cnt'])
echo "<span style='font-size:10px;color:red;'>(".$list[$i]['comment_cnt']." )</span>";
if (isset($list[$i]['icon_new'])) echo " " . $list[$i]['icon_new'];
if (isset($list[$i]['icon_hot'])) echo " " . $list[$i]['icon_hot'];
if (isset($list[$i]['icon_file'])) echo " " . $list[$i]['icon_file'];
if (isset($list[$i]['icon_link'])) echo " " . $list[$i]['icon_link'];
if (isset($list[$i]['icon_secret'])) echo " " . $list[$i]['icon_secret'];
?>
</li>
<?php } ?>
<?php if (count($list) == 0) { //게시물이 없을 때 ?>
<li>게시물이 없습니다.</li>
<?php } ?>
</ul>
도움 및 조언 부탁 드립니다.
감사합니다.
답변 3
<ul>
<?php for ($i=0; $i<count($list); $i++) {
// 'wr_10'이 전부공개인지 확인
$is_public = ($list[$i]['wr_10'] == '전부공개');
// 현재 사용자의 회원 등급 확인
$user_level = $member['mb_level'];
// 게시물 표시 조건
$can_view = $is_public || (!$is_public && $user_level >= 5);
if ($can_view) {
?>
<li class="l_sub">
<?php
if ($list[$i]['is_notice']) {
$notice_class = "class='notice_class' ";
$txt = "<i class='fa fa-volume-up' aria-hidden='true'></i> ";
} else {
$notice_class = "";
$txt = "";
}
echo "<a href='{$list[$i]['href']}' {$notice_class}>";
echo $txt;
echo $list[$i]['subject'];
echo "</a>";
if ($list[$i]['comment_cnt'])
echo "<span style='font-size:10px;color:red;'>(".$list[$i]['comment_cnt']." )</span>";
if (isset($list[$i]['icon_new'])) echo " " . $list[$i]['icon_new'];
if (isset($list[$i]['icon_hot'])) echo " " . $list[$i]['icon_hot'];
if (isset($list[$i]['icon_file'])) echo " " . $list[$i]['icon_file'];
if (isset($list[$i]['icon_link'])) echo " " . $list[$i]['icon_link'];
if (isset($list[$i]['icon_secret'])) echo " " . $list[$i]['icon_secret'];
?>
</li>
<?php
}
} ?>
<?php if (count($list) == 0) { //게시물이 없을 때 ?>
<li>게시물이 없습니다.</li>
<?php } ?>
</ul>
<ul>
<?php for ($i=0; $i<count($list); $i++) { ?>
<li class="l_sub">
<?php
if ($list[$i]['is_notice']) {
$notice_class = "class='notice_class' ";
$txt = "<i class='fa fa-volume-up' aria-hidden='true'></i> ";
} else {
$notice_class = "";
$txt = "";
}
// wr_10 필드 값 확인
$wr_10 = isset($list[$i]['wr_10']) ? $list[$i]['wr_10'] : '';
if ($wr_10 == '전부공개' || $member['mb_level'] > 4) {
echo "<a href='{$list[$i]['href']}' {$notice_class}>";
echo $txt;
if ($wr_10 != '전부공개' && $member['mb_level'] > 4) {
echo "<span style='color:#ccc;'>[m] </span>";
}
echo $list[$i]['subject'];
echo "</a>";
if ($list[$i]['comment_cnt'])
echo "<span style='font-size:10px;color:red;'>(".$list[$i]['comment_cnt']." )</span>";
if (isset($list[$i]['icon_new'])) echo " " . $list[$i]['icon_new'];
if (isset($list[$i]['icon_hot'])) echo " " . $list[$i]['icon_hot'];
if (isset($list[$i]['icon_file'])) echo " " . $list[$i]['icon_file'];
if (isset($list[$i]['icon_link'])) echo " " . $list[$i]['icon_link'];
if (isset($list[$i]['icon_secret'])) echo " " . $list[$i]['icon_secret'];
} else {
echo "<span style='color:#ccc;'>[m] </span>";
echo $list[$i]['subject'];
}
?>
</li>
<?php } ?>
<?php if (count($list) == 0) { //게시물이 없을 때 ?>
<li>게시물이 없습니다.</li>
<?php } ?>
</ul>
답변 모두 감사 드립니다. 채택은 한 분밖에 할 수 없어서, 먼저 올려주신 답변에 드렸네요.
덕분에 잘 해결했습니다. 항상 많은 도움 주셔서 감사합니다.