랜덤 페이지 이동 구현
게시판이 많은 사이트의 경우 랜덤적으로 게시판 입장하는 것도 또 하나의 즐거움이라 생각됩니다.
물론 일반 페이지도 포함되어 있구요
해당 페이지 링크 하시면 3초 뒤 랜덤 페이지로 이동해 색다른 재미도 줄 수 있을 것 같습니다.
아래 코드 풀로 복사 하셔서 원하는 파일명으로 작명하신 뒤 index.php 파일이 있는 최상단에 업로드 해주세요
모르겠다 하시면 파일 다운로드
홈페이지주소/random_page.php 파일 실행하시면 됩니다.
주석으로 내용 달아뒀으니 수정 자유롭게 하시면 될 것 같습니다.

[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]
고맙습니다.
댓글 4개
역시 초보들이 손쉽게 사용할수있게 해주시는 센스~
감사합니다
감사합니다.
감사합니다.
게시판 목록
그누보드5 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 공지 | 3년 전 | 4423 | ||
| 2334 | 2년 전 | 3697 | ||
| 2333 | 2년 전 | 2063 | ||
| 2332 |
swallow
|
2년 전 | 1421 | |
| 2331 | 2년 전 | 2502 | ||
| 2330 | 2년 전 | 3447 | ||
| 2329 |
welcome
|
2년 전 | 2127 | |
| 2328 | 2년 전 | 1502 | ||
| 2327 |
|
2년 전 | 2195 | |
| 2326 | 2년 전 | 1342 | ||
| 2325 | 2년 전 | 2152 | ||
| 2324 | 2년 전 | 1628 | ||
| 2323 |
희동이76
|
2년 전 | 1400 | |
| 2322 | 2년 전 | 2198 | ||
| 2321 | 2년 전 | 1739 | ||
| 2320 |
희동이76
|
2년 전 | 1387 | |
| 2319 | 2년 전 | 2192 | ||
| 2318 |
슈퍼스타맨
|
2년 전 | 1821 | |
| 2317 | 2년 전 | 1488 | ||
| 2316 | 2년 전 | 1966 | ||
| 2315 | 2년 전 | 1767 | ||
| 2314 | 2년 전 | 1272 | ||
| 2313 | 2년 전 | 1457 | ||
| 2312 | 2년 전 | 2495 | ||
| 2311 | 2년 전 | 1714 | ||
| 2310 | 2년 전 | 1714 | ||
| 2309 | 2년 전 | 3338 | ||
| 2308 | 2년 전 | 1025 | ||
| 2307 | 2년 전 | 1619 | ||
| 2306 |
디지털홍익인간
|
2년 전 | 2507 | |
| 2305 | 2년 전 | 1900 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기