본문 바로가기

IT프로그래밍

My Bulletin Board

프로젝트명

My Bulletin Board 

 개발 기간

 About 1 Month(14.12.14 ~ 15.01.07)

 개발 환경

Window 7, Eclipse, APM SETUP

주 사용언어

PHP, HTML

데이터베이스

SQL 

기능

글을 쓰고 읽을 수 있는 기본적인 기능과 검색,

글 목록 나눠서 보여주기 등을 구현.




My Bulletin Board 간략 흐름도







1. Write.php

제목, 내용, 이름, 비밀번호를 입력 받아 POST형식으로 Write_go에 전송, Write_go에서 공백문자 검사 후, 에러가 없으면 쿼리를 통해 SQL DB에 저장


2. List.php

SQL DB에 저장되어 있는 값을 fetch array를 통해 불러옴. <a href>태그를 사용하여, 글의 제목을 클릭하면 Read.php?id=해당하는 글의id_num을 호출->read로 이동


3. Read.php

List에서 get방식으로 넘어온 해당글의 id_num값을 통해, select * from db_name where id_num쿼리 실행, 정보를 가져와서 화면에 뿌려줌


4. Edit.php

Post방식으로 id값을 넘겨준 후, 비밀번호를 입력받음 id값에 저장되어 있는 비밀번호와 HTML에서 입력된 비밀번호 값을 비교, 같으면 Edit_go_1.php로 넘어감, 비밀번호를 입력하지 않고 URL로 바로 접근하는 경우를 차단하기 위해 edit_go_2.php라는 과정에서 flag값을 한번 더 비교


5. Del.php

글을 지우는 기능, 에디트와 비슷한 설계


6. Search.php

제목, 내용, 작성자 등의 카테고리별로 글을 검색하는 기능, HTML의 select로 조건을 비교할 수 있는 값을 준 후, POST로 검색페이지로 넘김, 검색페이지에서는 select * from db_name where 검색조건 like %검색명% 쿼리로 값을 찾고 해당하는 글만 보여줌





리스트 페이지 나누기

select count(*) from db_name 쿼리를 통해 전체 글의 갯수를 구하고, 페이지에 보여주고 싶은 수만큼의 수로 나눈 후 반올림


ex) 글 갯수 32, 한페이지 보여주고싶은 글 수 5 이라면 -> 총페이지는 round(5/32) = round(6.4) = 7페이지

반복문을 통해 1에서 총 페이지 만큼 숫자를 글 목록 밑에 표시

그 숫자에 <a href>태그를 사용하여 5번째 글(화면에 보여주고 싶은 글의 수)마다 id값을 저장시키고 

링크를 누르게 되면 select * from db_name order by id_num desc limit view_num 을 사용하여 보여지고 싶은 수만큼만 표시


덧글 시스템

새로운 db를 하나 더 생성, 내가 읽고 있는 글의 id_num값 * 100에서 부터 순차적으로 reply_id_num 대입, 글을 읽으면 쿼리를 통해 검사하고 덧글이 있다면 표시


ex) id_num이 38인 글을 읽으면, reply_id_num 3800 ~ 3899를 검색, 사이에 해당하는 글이 있다면 읽어와서 화면에 표시