2012-07-09 3 views
0

저는 PHP를 사용하여 CMS를 구축하는 중입니다. 그러나 동적 페이지가 제공 할 수있는 다양한 자산을 처리하는 방법에 대해 고심하고 있습니다. 보통 평균 페이지에는 그림이 포함됩니다 (엄지, 몸, 주요 등), 인라인 이미지 및 다양한 자산 (pdf, flv, mp4, doc 등)을 제공합니다.사용자 정의 CMS 용 이미지, 비디오, 문서 처리

사용자가 자산을 업로드하고 서버에 폴더를 만들 수있는 순간에 CMS에서 동적 페이지를 삭제, 편집 및 링크하는 방법을 관리하는 방법에 대한 기술과 개념이 필요했습니다. 나는 이미 모든 콘텐츠 (meta_stuff, title, friendly_url, content_text 등)를 포함하는 콘텐츠 테이블을 가지고 있습니다.

업로드시 참조가 자산 테이블에 저장되어야합니까? 애셋의 모든 경로 (이미지, 문서, 동영상 등)를 하나의 테이블에 저장해야합니까? 또는 각 자산에 대해 분리 할 수 ​​있습니까? 여러 필드 (예 : assetid, smallpath, mediumpath, largepath? )에 애셋을 동적 페이지에 연결하는 데 사용할 수있는 기술은 무엇입니까? ? 나는 페이지에 대한 여러 PDF 파일 및 여러 이미지를 다른 자산을 검색 가야합니까 어떻게? 이것은 당신이 도움이 될 것이라고 생각? 및 다른 어떤 다른 동적 페이지를 참조 할 수 있기 때문에 자산을 삭제 처리하는 방법?

모든 도움을 주셔서 감사합니다.

답변

1

다음은 설명과 비슷한 시나리오에서 리소스 (비디오, 이미지, 문서 ..)를 다룰 때 유의해야 할 몇 가지 기본 사항입니다. 빙. 당신이 원하는 것

는 '의,의 업로드되는 물건의 업로드되고 어떤 종류의 '무엇가 알고의 업로드입니다.

편집 :는 실수에 대해 죄송합니다, asset_types.asset_type_idassets.asset_type_id에 연결해야하며 NOT assesst.asset_id

enter image description here
(주 : 이것은 단지 개요이다이를 위해 다음과 같은 테이블을 가지고하는 것이 좋다 물론 당신은
이 모델은 쉽게 다음과 같은 작업을 수행 할 수 있습니다) 필드를 더해야합니다

  • 업로드 : 무언가가 업로드 될 때 올바른 ( .htaccess 구성으로) 어딘가에 저장 한 다음 해당 경로를 테이블에 저장합니다.
  • 삭제 : 사용자가 항목을 삭제하려고 할 때 소유자인지 확인합니다.
  • 새 형식을 추가하려는 경우 새 테이블을 만들 필요가 없습니다.

바라기를 이것은 올바른 방향으로 나아갈 것입니다.

업데이트 : 사용자가 예를 들어 문서에 이미지를 추가하고자 할 때, 당신의 의견에 대답, 당신은 여기에 두 가지 옵션이 있습니다

  1. 사용자가 버튼/선택 메뉴로 제공됩니다/원하는 이미지를 선택하려면 무엇이든 클릭하면 콘텐츠 본문에 <img src=LINK_TO_RESOURCE" />이 추가됩니다 (XSS로부터 자신을 보호해야 함). 콘텐츠를 볼 때

    또는


  2. 당신은 당신의 자신의 간단한 마크 업을 사용, 영상이 [[PREFIX_IMG:IMG_ID]]에 사용자가 클릭 컨텐츠의 몸에 추가됩니다 때 대체 거 야 "태그"와 IMG_ID을 사용하여 획득 한 <img src="LINK_TO_RESOURCE" />입니다.

2 업데이트 : 그럼 당신이 직접 "기사"자신에 포함되지 않은 자원을 처리 할 수있는 몇 가지 옵션이있다.

  1. 당신은 당신이 예를 들어 summary, 당신은 asset_sub_type를 호출 summary 같은 다른 유형을 가질 수 assets 테이블을 하나 더 열을 호출 할 수 있습니다 "기사"테이블에서 필드를 가질 수있다. 그런 다음 요약을 보려는 경우 데이터베이스에서 요약 텍스트/제목을 가져오고 리소스를 추가합니다.

  2. (이것은 내가 사용하는 기술입니다.) 데이터베이스에서 요약을 가져올 때 해당 기사와 관련된 데이터베이스가 어떤 이미지인지 그리고 PHP로 크기를 조정하고 요약에 추가하십시오.

+0

답장을 보내 주셔서 감사합니다. 소유자를 잘 생각해 본적이 없습니다. 사용자가 미리보기 이미지, 주 이미지를 업로드하고 이제이 경로를 실제 콘텐츠 표 자체에 추가해야하거나 콘텐츠 표 ID와 콘텐츠 표가 모두 포함 된 다른 표가 있어야하는 경우이 항목을 여러 콘텐츠 페이지에 추가하려고하면 어떻게됩니까? 자산 ID? 또는 다른 어떤 방법? – ninjamaster

+0

시간을내어 답변 해 주셔서 다시 한 번 감사드립니다. 내 질문에 너무 분명하지 않아서 미안하지만 실제 컨텐트 내의 인라인 이미지와 관련하여이 개념을 이해합니다. 그러나 기사에없는 이미지에 관해서 이야기하고 있습니다. 콘텐츠, 기사를 나열하는 데 사용할 수있는 이미지, 동영상 미리보기 이미지 또는 기능을 표시하는 경우 http://www.bbc.co.uk/sport/0/ – ninjamaster

+0

예를 들어 단일 콘텐츠 페이지에는 여러 개의 관련 이미지, 콘텐츠에 대한 큰 이미지, 기능에 표시 할 중간 이미지, 모든 콘텐츠 등의 목록에 표시되는 미리보기 이미지 등이 있습니다. 시스템에서 어떻게 처리해야하는지 궁금합니다. 모든 도움을 주셔서 감사합니다 – ninjamaster