2011-01-14 6 views
-3

사용자가 페이지를 추가하고, 레이아웃을 편집하고, 드롭 요소를 드래그하고, 요소의 크기를 조정하고, 텍스트 서식을 지정하고, 요소 특성을 편집 할 수있는 웹 응용 프로그램을 구축 중입니다.
페이지에서 사용자 데이터베이스의 데이터, PHP 코드에 의해 생성 된 데이터 등의 동적 데이터를 포함 (검색) 할 수 있습니다.

최근에 cakephp 및 jquery로 놀아서이 앱을 만들려고했습니다. 하지만 PHP 코드를 적절히 표시하는 방법에 대해 우연히 만났습니다. 나는 cakephp 핵심 코드를 조사하고 출력 버퍼링을 찾고 출력을 버퍼링하여 PHP 코드를 파싱하고이를 표현하기 위해 정규 표현식을 사용하려고 시도했지만 파서를 내 자체에 쓰면 휠을 재발 명할 가능성이 높습니다.

내가 묻는 내용은 다음과 같습니다.
좋아, 좀 더 간단하고 구체적으로하기 위해서, 페이지에 PHP 코드가 포함되어있는 경우 사용자가 작성한 페이지를 저장하고로드하는 방법에 대해 묻고 싶습니다. 난 그냥 내 자신의 파서 또는 PHP 코드를 구문 분석 할 라이브러리를 작성하는 것보다 다른 방법이 있는지 알고 싶습니까?PHP WYSIWYG 편집기 만들기

이제 모든 것이 좋습니다. 구현 방법은 누구나 알고 있습니까? 또는 어떤 참고 문헌을 가져 오는 데 유용 할 수있는 페이지/웹 사이트가 있습니까? 아마도 약간의 참조를 얻을 수있는 샘플 코드 일 수도 있습니다.
감사합니다.

+2

여기에 몇 가지 큰 질문을하고 있습니다. 이것이 첫 번째 PHP 프로젝트입니까? – fredley

+2

drupal 또는 joomla!를 설치하고, 웹 사이트 디자인 과정을 개설하고, 약 3 ~ 4 개의 PHP 및 MySQL 서적을 읽고, 여러 포럼에 가입하고 읽고 PHP 사용자 그룹에 가입하십시오. – PurplePilot

+1

fredley처럼, 너 자신을 과장되게. 그러나 http://pfp-studio.sourceforge.net/ 및 http://radria.sqlfusion.com/ – symcbean

답변

-1

여기에 대한 좋은 답변을 찾을 수 있을지 확신하지 못합니다.

와우 어디서부터 시작해야할지 모르겠습니다. 3 번부터 시작하겠습니다. 위젯이 필요합니다. 그렇다면 위젯 클래스를 만들거나 템플릿을 가지고있는 객체를 만들어야한다는 것을 의미합니다. 내가 너라면 PHP에서로드 된 것이 아니라 자바 스크립트에서로드 될 것이다. 각 위젯은 javascript를 사용하여 div에 개별 애플리케이션을로드하는 방식으로 사용됩니다.

포인트 2, 위젯이 필요했습니다. 페이지에 위젯을 추가 할 때 위치, 제목, 크기 등과 같은 정보를 저장해야합니다. 생성 매개 변수를 저장할 수도 있습니다. 예를 들어 ListWidget은 다른 ItemProvider로 시작될 수 있습니다. 그렇게하면 1000 개의 위젯을 쓰지 않고 다른 내용을 표시하는 위젯 만 작성할 수 있습니다. 그것은 위젯, 치수 및 위치가 있다고 말했습니다. 이제는 1을 가리켜 야합니다.

포인트 1. 위젯, 위치 및 치수가 있으면 해당 페이지와 연관된 데이터를 만드는 데 사용한 데이터를 서버로 보냅니다. 그것은 2 점 2를 다시 우리에게 이끈다.

일단 페이지를 저장하면. 매개 변수 등을 사용하여 모든 위젯을 검색하여이를 볼 수 있습니다. 2 가지 옵션이 있습니다.

  1. 저장된 위젯을 다시 만드는 Javascript를 생성하십시오.
  2. HTML을 생성하면 모든 위젯이 생성됩니다.

옵션 1은 옵션 2가 javascript 자체에 javascript를 바인딩하지 않기 때문에 더 간단합니다. 반면에 솔루션 2는 서버에 대한 요청이 하나뿐이므로 더 좋습니다.

아, 마지막으로 몇 가지 제한을 설정해야합니다. 그런 종류의 일은 매우 복잡하고 불행하게도 그다지 커질 수는 없습니다. 예를 들어 drupal을 참조하십시오. 그것은 멋진 것들을 많이하지만 당신이 모듈을 많이 설치하자마자. 드루팔 (Drupal은 몬스터를 먹는 기억의 일종으로 변신합니다. 거의 항상 동적 컨텐츠를 많이 필요로하지는 않습니다. 고정 레이아웃은 거의 99 %의 시간 동안 작업을 훌륭하게 처리합니다.

나는 또한 당신이 7 마리의 다리가있는 고양이를 키울 수있는 과학자만큼 강력한 힘을 사용자에게주는 응용 프로그램을 만들려고 노력해야한다고 말하고 싶습니다. 나는 당신이 정말로 모호한 군대와 놀 거라고 생각해!