2014-01-20 7 views
0

opencart와 phpbb를 통합하려고했지만 문제가 발생했습니다. 통합으로 말하자면 사용자가 opencart 또는 phpbb에 로그인하면 두 사이트 그것은 단지의 phpBB 반대의 경우도 마찬가지)에 로그인시 opencart DB에서 관련 데이터를 삽입 참여하기 때문에 나를 위해 좋은동일한 클래스 이름을 사용하는 두 개의 PHP 응용 프로그램 통합, 변수 이름

문제는 내가 opencart 페이지 자체 에 phpBB의 게시물을 받기 시작해야 할 때 나는이 스레드를 다음에 무슨 일이 있었

wiki.phpbb.com/Practical.Displaying_posts_and_topics_on_external_pages

결국 다음 라인은 phpbb의 거의 모든 클래스/함수를 포함합니다.

include ($ phpbb_root_path. '공유지.' . $ phpEx);

이제 캐시에 세션 이름, 템플릿 이름과 같은 이름의 클러스터가 있습니다. PHP에서 충돌하는 모든 클래스의 이름을 PHP로 바꾸었지만 이름이 같은 전역 변수가 있음을 알았습니다. $ db와 같은 전역 변수도 같은 이름을 가지고 있습니다 일반적인 함수들에 대해서도 중복 함수를주의 깊게 삭제해야합니다.

일반적인 클래스 이름, 함수 및 전역 변수를 가진 두 개의 PHP 응용 프로그램을 통합하는 방법을 누군가가 말해 줄 수 있습니까? 변수

나는 아무것도 작동하지 않으면 phpbb가 여전히 다른 응용 프로그램이되도록 ajax 요청/응답으로 opencart에서 phpbb에 액세스 할 것이라고 생각했습니다. 예를 들어, (URI url/forum을 말하는 주제 ID를 전달하고 스크립트에서 얻은 응답을 읽음으로써) 게시물을 얻고, opencart 화면에서이 응답을 작성하는 ajax 요청을 발행하십시오.

답변

-1

여기에는 아마도 옵션 : 하위 폴더/하위 도메인/다른 도메인에서 OC 또는 BB를 실행하십시오. 언급 한대로 통합하지 마십시오.

대신에 BB 측에서 자체 API (가장 깨끗한 방법)와 다른 API 클라이언트 (API는 필요한 데이터를 제공하는 메소드 포함)를 작성하십시오.

또 다른 해결책은 BB 데이터베이스에서 데이터를 직접 읽는 OC에서 새 모델을 구현하는 것입니다 (BB에서 복사하는 것만으로). 따라서 OC 데이터베이스에서 데이터를 직접 호출하여 OC 컨트롤러에서 데이터를 호출하고 데이터를 정상적으로 표시 할 수 있습니다 OC는 않습니다 ... 이것은 또한 깨끗한 솔루션으로 간주됩니다.

+0

두 개의 복잡한 소프트웨어를 통합하면 더 큰 여러 가지 복잡한 문제가 발생하기 때문에 결코 좋은 생각이 아닙니다. 제안 된대로 별도로 유지하고 실제로 필요할 때 자신의 추가 논리를 구현하십시오. – ToBe