2011-02-08 3 views
0

나는 내 자신의 사용자 정의 포럼 시스템 소프트웨어를 만드는 중이에요. phpbb, mybb, vbulletin 등은 분명히 상당히 진보 된 것 외에는 많이 있습니다. 그것은 나 자신을위한 개인 프로젝트 일 뿐이며 다른 사람들을 위해 재 포장 될 수있는 무언가를 개발할 필요가 없었기 때문에 몇 가지 문제에 봉착했습니다. 다음과 같이오픈 소스 소프트웨어 - 파일 설정 방법

파일 구조는 다음과 같습니다

File Structure

그래서, config.php에 모든 파일을 포함하여 모든 일 끝이다. 그것은 데이터베이스 연결 정보를 가지고 있으며, 데이터베이스 클래스도 인스턴스화하고, config.php가 필요한 곳에서는 항상 액세스 할 것이므로 어떤 함수 파일도 필요/포함하지 않습니다.

여기에 질문이 있습니다. 그러나 간단하지만 매우 성가신 문제에 직면 해 있습니다. 예를 들어 config.php에서 사용자 쿠키 값을 확인하고 모두 동일한 사용자에 속하는지 확인하고, 그렇지 않으면 쿠키를 삭제합니다 . 그러나 데이터베이스 파일을 필요로하는 후에해야합니다. 그리고 config.php에 선언 된 변수는 항상 액세스 할 수있는 것은 아니기 때문에 헤더 파일에 선언해야합니다.

많은 질문이 아닌 것 같지만 문제를 다루지 않고 일반적으로 포함/요구할 수있는 방법을 묻는 것 같습니다.

+0

아마도 좋은 답변을 얻으려면 좀 더 구체적이어야합니다. – James

+0

프레임 워크를 사용하십시오. – igorw

답변

0

일반적으로 대부분의 사람들은 구성 변수와 코드를 하나의 파일에 혼합하지 않습니다. Wordpress와 같은 인기있는 오픈 소스 패키지를 보면 Config.php에 설정 변수가 있습니다. 코드 없음.

0

"일회성"상황 이상으로 특정 기능을 사용하는 경우 주류에 배치하여 필요할 때 사용할 수 있습니다.

@James가 맞으면 설정 파일을 분리하십시오. "application.php"필수 파일 안에 포함시킬 수 있습니다 (그래서 전 세계적으로 사용 가능합니다).

페이지 빌드 전에 HTTP 헤더 정보가 절대적으로 필요한 상황이 발생했습니다. 약간 뒤로 보였지만 해결 방법은 먼저 해당 파일을 호출 한 다음 application.php 파일을 포함시키는 것입니다. 쿠키를 확인하는 것이 좋습니다.

또 다른 상황에서는 @include ('myStubbonPricing.php')가 답이었습니다. 나는 에러 억압의 옹호자는 아니지만 제 경우에는 우편 요금이 입력 된 경우에만 배송비를 출력했습니다. 내 방어! isset 등은 XML 요청/응답 시나리오로 인해 문제를 해결할 수 없습니다.

관련 문제