2011-12-28 4 views
0

채팅 기록 시스템을 만들려고합니다. 그래서 한 사람이 서로 인사를 나눌 때마다 다른 말을 할 수도 있습니다. 그리고 각각의 안녕하세요, 나는 그들이 쓴 것을 역사 html 파일에 추가하는 것을 원하지 않습니다. 이런 식으로 :PHP를 사용하여 MySQL BLOB에 파일을 저장하는 방법은 무엇입니까?

James Said: Hi Richard, i saw that hardware you told me about, it is compatible with our software!. 

At: 23 November 2011 - 23:09 UTC-08. 
________________________________________________________________________________________ 

Richard Said: Nice!! let's start working with it this week, the project has to be finished before the end of the world. 

At: 24 November 2011 - 09:23 UTC-08. 
________________________________________________________________________________________ 

HTML 파일은 PHP로 만들 수 있지만 어떻게 MySQL BLOB에 저장합니까? 디렉토리에 저장하지 않고 (직접 BLOB에).

+1

왜이 용도로 mysql을 사용 하시겠습니까? IMHO, "올바른 방법으로"(별도의 레코드로) 저장하거나 디스크에 HTML 파일을 작성하십시오. –

+0

다른 필드와 마찬가지로 정상적으로 작업 할 수 있습니다. 튜토리얼을 찾고 있습니까? – hakre

답변

3

정말 Binary (Blob의 B)가 아니기 때문에 HTML이지만 MEDIUMTEXT 형식을 사용하고 일반 텍스트 필드로 처리하는 것이 좋습니다.

3

이 문제에 대한 접근 방법은 실제로 좋은 방법이 아닙니다.

특정 출력 형식으로 데이터를 저장하려고하면 갑자기 다른 형식의 데이터가 필요한 경우 실제 문제가 발생합니다.

대화의 내용을 저장 한 다음 저장된 대화에서 표시 할 출력을 생성하는 것이 훨씬 낫습니다. . 당신이 쉽게 당신이 그것을해야 할 수도 형식의 모든 종류를 제공 할 수 있습니다 방법

편집에 추가하려면 : 다른

뭔가 내가 언급해야한다 (그러나 모든 크리스마스 브랜디 덕분에 잊고;)) , 대화 데이터를 하나의 큰 데이터 블록에 저장하려고하면 관계형 데이터베이스를 사용하는 이점의 대부분을 무효화 할 수 있습니다. 예를 들어 대화의 각 줄의 타임 스탬프를 쉽게 저장하거나 대화의 특정 항목에 대해 데이터베이스를 검색 할 수 없습니다. 물론 해결 방법을 찾을 수는 있지만 주어진 데이터베이스는 이미 이러한 종류의 문제를 해결하기 위해 이미 설계되었으므로 노력을 낭비하고 솔루션이 데이터베이스가 제공하는 것까지 측정하지 못합니다.

관련 문제