반응형
현재 제공해 주신 사이트의 인덱스 페이지에 PHP + MySQL 기반의 게시판 기능을 추가하려면 다음과 같은 방식으로 적용하면 됩니다.
✅ 주요 작업 내용
- 게시판 섹션 추가 – index.html에 게시판 리스트를 출력
- list.php 추가 – 게시글 목록 표시
- write.php 추가 – 글 작성 페이지
- view.php 추가 – 게시글 조회 페이지
- 데이터베이스 테이블 생성 – posts 테이블
- Bootstrap 스타일 적용 – 기존 디자인과 조화롭게 적용
📌 1. index.html에 게시판 섹션 추가
HTML을 index.html에 추가하여 게시판 리스트를 표시하고, 게시판 페이지(list.php)로 이동할 수 있도록 합니다.
<!-- 기존 Index 페이지 안에 추가 -->
<div class="container mt-5">
<h2 class="fw-bold text-primary">📌 게시판</h2>
<p>최신 게시글을 확인하고 자유롭게 참여하세요!</p>
<div class="list-group">
<?php
include("db.php"); // 데이터베이스 연결
$sql = "SELECT id, title, created_at FROM posts ORDER BY created_at DESC LIMIT 5";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo '<a href="view.php?id=' . $row["id"] . '" class="list-group-item list-group-item-action">';
echo '<strong>' . htmlspecialchars($row["title"]) . '</strong> <span class="text-muted small">(' . $row["created_at"] . ')</span>';
echo '</a>';
}
} else {
echo '<p class="text-muted">게시글이 없습니다.</p>';
}
?>
</div>
<a href="list.php" class="btn btn-primary mt-3">게시판 전체 보기</a>
</div>
📌 2. list.php (게시글 목록)
이 파일을 list.php로 저장하여 전체 게시글을 보여주는 페이지를 만듭니다.
query($sql);
?>
게시판
글쓰기
fetch_assoc()) { ?>
번호 | 제목 | 작성일 |
---|---|---|
홈으로
close(); ?>
📌 3. write.php (게시글 작성 페이지)
게시판에서 새 글을 작성할 수 있도록 만듭니다.
query($sql) === TRUE) {
header("Location: list.php"); // 글 작성 후 목록으로 이동
} else {
echo "오류 발생: " . $conn->error;
}
}
?>
새 글 작성
취소
📌 4. view.php (게시글 상세 조회)
각 게시글을 클릭하면 내용이 표시됩니다.
query($sql);
$row = $result->fetch_assoc();
?>
목록으로
close(); ?>
📌 5. db.php (데이터베이스 연결)
데이터베이스 연결을 위한 파일입니다. 모든 PHP 파일에서 include("db.php");를 추가하면 DB 연결을 유지할 수 있습니다.
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "board_db";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("연결 실패: " . $conn->connect_error);
}
?>
📌 6. MySQL 테이블 생성
PHPMyAdmin 또는 MySQL CLI에서 실행하세요.
CREATE DATABASE board_db;
USE board_db;
CREATE TABLE posts (
id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
🚀 최종 정리
✅ index.html에서 게시판 목록 표시
✅ list.php에서 전체 게시글 확인
✅ write.php에서 새 글 작성 가능
✅ view.php에서 게시글 조회 가능
✅ db.php로 MySQL 연결 관리
✅ posts 테이블을 MySQL에 생성
이제 PHP + MySQL 기반의 게시판이 사이트에 정상적으로 추가됩니다! 😊🚀
반응형
'데이터 > IT 조금 전문적으로' 카테고리의 다른 글
DeepSeek 사용 가능 환경표 (0) | 2025.02.20 |
---|---|
DeepSeek-R1 개인 PC에 설치하여 사용하기 (0) | 2025.02.20 |
유튜브 알고리즘 초기화(청소) 방법: 원하지 않는 추천 영상 없애기 (0) | 2025.02.05 |
그래픽 카드 구매 시 반드시 고려해야 할 요소들 (0) | 2025.02.04 |
CPU의 역사: 컴퓨터 혁신의 심장 (0) | 2025.02.03 |