하나의 긴 html 페이지가 있고 여러 질문 세트가 작은 섹션 (한 페이지에 약 15 개의 하위 섹션)으로 나뉘어져 있으며 총 질문 수는 약 100 개의 질문입니다. 입력, 객관식 선택, 확인란, 라디오 버튼, 텍스트 영역, 파일 업로드. 하나의 질문에는 확인란 그룹, 선택 목록 그룹, 다중 선택 그룹 또는 모두 하나의 답변으로 결합 된 많은 답변이 포함될 수 있습니다. 나는이 데이터베이스 디자인을 아래에서 사용할 것이라고 생각했지만 결국 좋은 접근 방법이 아니라는 것을 최근에 알게되었습니다.
- 한 고객은 한 질문 세트 만 가질 수 있습니다 (100 질문 당 한 고객).
- 오래된 접근법의 경우 데이터베이스에 질문을하지 않고 대신 PHP 코딩에서 상수로 할당합니다. 문제는 PHP의 질문을 데이터베이스의 답변과 동기화하기 위해 질문을 비교해야한다는 것입니다. PHP에서 하나의 질문이 변경 / 삭제 / 이동 된 경우 Questionnaire 데이터베이스의 답변과 일치하지 않을 것입니다. 더 나은 솔루션?
- 여러 요소에서 얻은 여러 답변을 하나의 답변으로 하나의 필드에 하나의 답변으로 유지할 수 있습니까? 고객이 양식을 볼 수 있도록이 필드를 검색하여 다시 표시하려면 어떻게해야합니까?
- 아래에서 어떤 옵션을 선택해야합니까?
옵션 1 : 기존 접근법 (1 테이블)
표 : 설문지
- 아이디 (PK)
- 고객 ID
- 상태
- A1
- A2
- A3
- .
- .
- .
- A100
옵션 2 : 새로운 접근법 (2 테이블)
표 : 질문
- QID (PK)
- 질문 (varchar)
표 : 답변
- 원조 (PK)
- 고객 ID
- QID (int)
- 답변 (varchar)
아니면 옵션 3?