2012-03-24 6 views
-5

나는 포럼을 만들려고 노력하고 있습니다.다른 사용자를위한 다른 파일

이미 로그인과 등록이되어 있지만 문제는 사용자가 만들 주제 (스레드)마다 다른 파일을 만드는 방법에 대한 아이디어가 없습니다. 내 첫 번째 모습은 fopen() 함수에 있었지만, fwrite() 파일에 글을 쓸 때 HTML과 PHP를 추가 할 수는 없습니까?

그래서 할 수 있다고 확신하지만 실제로 어떻게해야할지 모르겠다. 나는 어떤 종류의 데이터베이스를 쓰레드를 위해 만들어야하고 어떤 종류의 데이터베이스를 코멘트 용으로 만들어야하고 어떻게 함께 결합시킬 것인가 (예 : this thread has been created by: X)를 생각해 보았지만 다른 것을 생성하는 방법에 대해서는 생각하지 못했다. 모든 주제에 대한 파일.

모든 아이디어를 얻을 수 있습니다. 읽어 주셔서 감사합니다. 다른 세부 정보가 필요한 경우 기꺼이 제공합니다.

+4

그냥 파일 대신 mysql 데이터베이스를 사용하십시오. – MrFoh

+0

직접 포럼 소프트웨어를 작성하고 작성하기 전에 사용할 수있는 많은 오픈 소스 예제를 살펴보아야합니다. 당신이하고 싶은 것을 위해 일할 수있는 사람을 찾을 수 있으며, 따라서 많은 일을 절약 할 수 있습니다. 어느 쪽이든, 다른 사람들이 과거에 같은 문제를 어떻게 해결했는지 확실히 알 수 있습니다. – Caleb

답변

2

모든 데이터를 플랫 파일로 저장하는 것이 가장 좋은 방법은 아닙니다. 포럼을 사용하는 사람들이 더 많아 질수록 파일 잠금과 관련된 문제는 발생하지 않을 것입니다.

다양한 데이터베이스에 데이터를 저장할 수 있습니다. 가장 일반적으로 데이터는 MySQL, SQLite, PostgreSQL 및 기타 수많은 관계형 데이터베이스에 저장됩니다. 내 제안은 당신이 선호하는 것을보기 위해 이들 중 몇 가지를 시도해 보는 것입니다.

한편, NoSQL 솔루션 (문서 저장소라고도 함)이 있습니다. 이들 중 일부는 MongoDB, couchDB 및 simpleDB입니다. 이것들은 관계형이 아니지만 포럼에 적용 할 때 여전히 잘 작동 할 수 있다고 생각합니다.

는 코드를 구조화에 관해서는 다음과 같은 작업을 수행 할 수 있습니다

  • 이 파일은 thread.php을했다. 스레드를 요청하려면 http://site.com/thread.php/1234/my-awesome-thread, 여기서 1234은 각 스레드의 고유 ID입니다.

  • post.php 사용자가 새 게시물 또는 기존 스레드에 대한 답장을 제출할 양식을 가져옵니다.

아마도 이것이 애플리케이션을 코딩하는 가장 직접적인 방법 일 것입니다. 그러나 유지 보수성 및 코드 재사용 측면에서 아마도 최선의 방법은 아닙니다. 응용 프로그램이 커지고 커지면 MVC (모델, 뷰, 컨트롤러) 구조를 구축하거나 기존 MVC 프레임 워크를 사용하여 시간을 투자하면 많은 어려움과 두통을 줄일 수 있습니다. :)

+0

오른쪽 .... http : //site.com/thread.php/1234/my-awesome-thread./1234/my-awesome-tread를 어떻게 할 것인지 잘 모르겠습니다. 답장을 부탁드립니다 – Bula

+0

@ Bula, 웹 개발 경험이 있습니까? 5 분 정도의 인터넷 검색으로 무엇을 할 수 있는지 알아낼 수 있어야합니다. – Bojangles

+0

'/ thread.php/1234/my-awesome-thread'를 반환하는'$ _SERVER [ 'REQUEST_URI']'를 사용할 수 있습니다. 그러면 그 문자열을 구문 분석하고 필요한 것을 추출 할 수 있습니다. – F21

관련 문제