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

배너 랜덤 순서로 노출하는 것에 대한 칠문입니다. 채택완료

Humpback 7년 전 조회 1,827

</p>

<p><?php

if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가</p>

<p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨

add_stylesheet('<link rel="stylesheet" href="'.G5_SHOP_SKIN_URL.'/style.css">', 0);

?></p>

<p><?php

for ($i=0; $row=sql_fetch_array($result); $i++)</p>

<p>{</p>

<p>    if ($i==0) echo '<aside id="sbn3_side" class="sbn3"><h2>쇼핑몰 배너</h2><ul>'.PHP_EOL;

    //print_r2($row);

    // 테두리 있는지

    $bn_border  = ($row['bn_border']) ? ' class="sbn_border"' : '';;

    // 새창 띄우기인지

    $bn_new_win = ($row['bn_new_win']) ? ' target="_blank"' : '';</p>

<p>    $bimg = G5_DATA_PATH.'/banner/'.$row['bn_id'];

    if (file_exists($bimg))

    {

       $banner = '';

        $size = getimagesize($bimg);

        echo '<li>'.PHP_EOL;

        if ($row['bn_pp'] == 1)

            $banner .= '<a href="'.$row['bn_url'].'"'.$bn_new_win.'>';

        else if ($row['bn_url'] && $row['bn_url'] != '<a href="http://')" target="_blank" rel="noopener noreferrer">http://')</a> {

            if (!preg_match("/^http/", $row['bn_url'])) {

                $banner .= '<a href="'.G5_SHOP_URL.'/bannerhit.php?bn_id='.$row['bn_id'].'&url='.urlencode(G5_URL.$row['bn_url'].'&top=1').'"'.$bn_new_win.'>';

            } else {

                $banner .= '<a href="'.G5_SHOP_URL.'/bannerhit.php?bn_id='.$row['bn_id'].'&url='.urlencode($row['bn_url'].'&top=1').'"'.$bn_new_win.'>';

            }        }

        echo $banner.'<img src="'.G5_DATA_URL.'/banner/'.$row['bn_id'].'" alt="'.$row['bn_alt'].'" width="'.$size[0].'" height="'.$size[1].'"'.$bn_border.'>';

        if($banner)

            echo '</a>'.PHP_EOL;

        echo '</li>'.PHP_EOL;

    }

}

if ($i>0) echo '</ul></aside>'.PHP_EOL;</p>

<p>?></p>

<p>

 

위의 소스로 현재 배너가 나오고 있는데요, 노출되는 순서를 좀 변경하고 싶은데 어디를 어떻게 건드려야될 지 모르겠습니다..ㅠㅠ

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

답변 1개

채택된 답변
+20 포인트
7년 전

결국 쿼리에서 배너에 관한 내용을 가져 오는거 아닌가요?

query 를 수정가능하다면 order by rand() 만 붙여도 쉽게 해결될텐데요 ^^

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

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

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

로그인