2026, 새로운 도약을 시작합니다.

랜덤 페이지 이동 구현

게시판이 많은 사이트의 경우 랜덤적으로 게시판 입장하는 것도 또 하나의 즐거움이라 생각됩니다.

물론 일반 페이지도 포함되어 있구요

해당 페이지 링크 하시면 3초 뒤 랜덤 페이지로 이동해 색다른 재미도 줄 수 있을 것 같습니다.

아래 코드 풀로 복사 하셔서 원하는 파일명으로 작명하신 뒤 index.php 파일이 있는 최상단에 업로드 해주세요

모르겠다 하시면 파일 다운로드

홈페이지주소/random_page.php 파일 실행하시면 됩니다.

주석으로 내용 달아뒀으니 수정 자유롭게 하시면 될 것 같습니다.

978180634_1714363916.7741.gif

[code]

<?php

include_once('_common.php');

 $exclude_clause = '';

// 제외할 게시판 작성 (아래 주석 참고)

 // $hardcoded_exclusions = ['notice', 'free'];

 $hardcoded_exclusions = [''];

 if (!empty($exclude_boards)) {

        $exclude_boards = array_merge($exclude_boards, $hardcoded_exclusions);

    } else {

        $exclude_boards = $hardcoded_exclusions;

    }

    $exclude_boards_string = "'" . implode("', '", $exclude_boards) . "'";

    $exclude_clause = " WHERE `bo_table` NOT IN ({$exclude_boards_string})";

    // 제외할 게시판을 제외한 모든 게시판 정보를 가져옵니다.

    $sql = "SELECT * FROM `g5_board`" . $exclude_clause;

    $result = sql_query($sql); // 쿼리 실행

    $all_boards_info = [];  // 모든 게시판 정보를 저장할 배열

    while ($board = sql_fetch_array($result)) {

        $bo_table = $board['bo_table'];  // 게시판 테이블명을 가져옵니다.

        $bo_subject = $board['bo_subject'];  // 게시판 제목을 가져옵니다.

        $all_boards_info[] = array(

            'bo_subject' => $bo_subject,

            'bo_table' => $bo_table,

            'type' => 'board'

        );

    }

    // 일반 페이지 추가 (path 에 주소 / title 에 페이지 이름(화면상에 보여질))

    $additional_pages = [

        ['path' => 'test1/index.php', 'title' => 'Test Page 1'],

        ['path' => 'test3/test.php', 'title' => 'Test Page 3']

    ];

    foreach ($additional_pages as $page) {

        $all_boards_info[] = array(

            'bo_subject' => $page['title'],

            'bo_table' => $page['path'],

            'type' => 'page'

        );

    }

    if (!empty($all_boards_info)) {

        $random_key = array_rand($all_boards_info);

        $random_board = $all_boards_info[$random_key];

        if ($random_board['type'] === 'board') {

            $redirect_url = "/bbs/board.php?bo_table=" . $random_board['bo_table'];

        } else {

            $redirect_url = "/" . $random_board['bo_table'];

        }

        // 더 빠르게 이동하려면 3000을 1000으로 변경시 1초가 됩니다 1000 당 1초

        echo "<script>setTimeout(function() { window.location.href = '{$redirect_url}'; }, 3000);</script>";

        echo $random_board['bo_subject'] . " (" . $random_board['bo_table'] . ") 으로 3초 후 이동합니다.<br>";

    }

[/code]

고맙습니다.

첨부파일

random_page.php (2.3 KB) 10회 2024-04-29 13:12
|

댓글 4개

역시 초보들이 손쉽게 사용할수있게 해주시는 센스~

감사합니다.

댓글 작성

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

로그인하기

그누보드5 팁자료실

번호 제목 글쓴이 날짜 조회
공지 3년 전 조회 4,598
2741 3일 전 조회 110
2740 4일 전 조회 103
2739 1주 전 조회 209
2738 1주 전 조회 217
2737 1주 전 조회 181
2736 1주 전 조회 280
2735 3주 전 조회 281
2734 3주 전 조회 263
2733 1개월 전 조회 265
2732 1개월 전 조회 301
2731 1개월 전 조회 266
2730 1개월 전 조회 225
2729 1개월 전 조회 355
2728 1개월 전 조회 245
2727 1개월 전 조회 422
2726 1개월 전 조회 256
2725 1개월 전 조회 330
2724 1개월 전 조회 358
2723 1개월 전 조회 267
2722 1개월 전 조회 300
2721 1개월 전 조회 211
2720 2개월 전 조회 304
2719 2개월 전 조회 307
2718 2개월 전 조회 202
2717 2개월 전 조회 336
2716 2개월 전 조회 202
2715 2개월 전 조회 311
2714 2개월 전 조회 273
2713 2개월 전 조회 376
2712 2개월 전 조회 289
🐛 버그신고