테스트 사이트 - 개발 중인 베타 버전입니다

최근게시물에 열람권한 적용하기 (소스수정) 채택완료

동물원 1년 전 조회 3,189

게시판 리스트 스킨 (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개

채택된 답변
+20 포인트
들레아빠

</p>

<pre>
<code><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></code></pre>

<p><code>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

들레아빠
1년 전
채택 감사 합니다.
동물원
1년 전
제가 더 감사합니다.^^

댓글을 작성하려면 로그인이 필요합니다.

1년 전

답변 모두 감사 드립니다. 채택은 한 분밖에 할 수 없어서, 먼저 올려주신 답변에 드렸네요.

덕분에 잘 해결했습니다. 항상 많은 도움 주셔서 감사합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

1년 전

</p>

<p><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 = "";

        }</p>

<p>        // wr_10 필드 값 확인

        $wr_10 = isset($list[$i]['wr_10']) ? $list[$i]['wr_10'] : '';</p>

<p>        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>";</p>

<p>            if ($list[$i]['comment_cnt'])

                echo "<span style='font-size:10px;color:red;'>(".$list[$i]['comment_cnt']." )</span>";</p>

<p>            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></p>

<p>

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인