크라슐라

제가 쓰는 그누보드 클로드 지침

· 2025-07-26 (토) 16:27:45 · 879
# 그누보드는 프레임워크를 사용하지 않은 PHP 기반의 오픈소스 게시판이다.
# 그누보드의 코드 특징은 다음과 같다.
-  common.php 가 미들웨어역할과 초기화 역활을 합니다. common.php, config.php 를 항상 참고하시오
-  그누보드의 모든 페이지는 common.php를 include_once로 불러와야한다.
-  mysqli 를 사용한다.
- 스킨과 테마는 그누보드의 디자인을 담당한다.
- 제이쿼리를 사용한다.
- 그누보드는 컴포저를 사용하지 않기에 외부 라이브러리가 필요한경우 사용자에게 요청 하시오
- 스킨, 테마 수정시 sql 쿼리가 들어가는 부분은 html 과 분리해서 작성한다.
- mvc 패턴을 따르지는 않지만 가능한한 php 코드는 함수화하여 html 코드와 분리해서 작성한다.
- data 디렉토리는 그누보드의 데이터와 업로드된 미디어 파일이 저장되는 디렉토리이다.

# 사용환경
 - 현재 PHP 버전은 7.4
 - mysql 버전은 5.7
 - 그누보드 5

# 테이블은 sql 파일 참고.
- gnuboard5.sql 파일을 확인.
- 테이블은 utf8mb4 인코딩을 사용.
- 테이블은 InnoDB 스토리지 엔진을 사용.
- 테이블 접두사는  @@ 이다.

# 추가된 테이블은 다음과 같다.
- @@ 테이블 목록또는 SQL 첨부

# 어떤 사항이 변경된 이유를 git history 를 통해 확인.
# 그누보드의 코드를 수정할 때는 다음 사항을 지켜야한다.
- 코드를 수정 작업이 끝나면 반드시 git commit 을 통해 변경 사항을 기록.
- mysql 쿼리는 가능한한 prepared statement 를 사용.

# 사용자의 요청사항에 대해 생각을 하고 계획을 세워야한다.
- 해결책은 코드로 작성.
- 변수명은 항상 의미있는 이름을 사용.
- 함수 작성시 주석을 작성.
- 보안 주의사항을 항상 참고.

# 보안 주의사항
- 그누보드는 보안에 취약할 수 있다. 
따라서 사용자 입력값은 항상 검증하고 필터링한다.
- SQL 인젝션, XSS, CSRF 등의 공격에 대비하여 코드를 작성.
- 사용자의 입력값은 항상 검증하고 필터링 필요.
- 스킨과 테마등 html 코드가 들어가는 부분에서 htmlpurifer 라이브러리를 사용한 purifier 함수를 사용한다.
- 변수를 만들때는 항상 초기값을 지정해야한다.

# 현재 프로젝트의 수정 사항은 다음과 같다.
- 지금 수정할 부분은 @@ 스킨과 테마다.

 

@@ 부분 만바꿔서쓰고요

 

함수들 자꾸 엉뚱하게 참고하길래

common.php , common.lib.php 에 죽은 주석들 싹지우고 

php doc 전부 달아놓았어요.  전역변수들도 설명적었고요... 조금 멀쩡해지네요

 

 

하 그냥 ts 에 프레임워크 쓰고싶어여 ㅠ

구조, 타입, 세션 이런거 다 집어던지고 코드에만 집중하게요..

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

AI

624건
+
제목 글쓴이 날짜 조회
25-08-15 조회 656
25-08-15 조회 662
25-08-15 조회 571
25-08-14 조회 818
25-08-13 조회 744
25-08-13 조회 753
25-08-09 조회 893
25-08-09 조회 707
25-08-09 조회 641
25-08-08 조회 694
25-08-08 조회 573
25-08-08 조회 721
25-08-07 조회 643
25-08-07 조회 742
25-08-06 조회 736
25-08-06 조회 740
25-08-06 조회 724
25-08-04 조회 642
25-08-02 조회 740
25-08-01 조회 733
25-07-30 조회 865
25-07-30 조회 2,092
25-07-30 조회 946
25-07-30 조회 1,113
25-07-28 조회 929
25-07-27 조회 801
25-07-26 조회 880
25-07-24 조회 1,005
25-07-23 조회 1,019
25-07-22 조회 972