2011-11-17 4 views
1

몇 가지 영리한 제출 논리를 적용하고자하는 다중 부분 양식에 대한 요구 사항이 있습니다.섹션이 완료 될 때마다 양식을 제출하는 가장 좋은 방법

  1. 개인 연락처 세부 사항
  2. 견적 상세
  3. 최종 댓글 난에있는 모든 데이터가 손실되지 않을 수있는 좋은 마케팅으로

: 여기에 아이디어, 형태는 3 단계가 사용자가 모든 단계를 완료하지 않은 이벤트 (다소 긴). 그 결과, 각 단계가 완료되면 양식 제출이 완료됩니다.. 따라서 사용자가 떨어지면 우리는 여전히 완성 된 단계에 대한 세부 사항을 포착합니다.

이상적으로 나는 실제로 양식을 3 번 제출하고 싶지 않습니다. 단순한 이메일 스크립트로 간다면 양식을 완성 할 때마다 3 가지 결과를 얻을 수 있습니다. 그래서 데이터를 저장하고 일정 기간 후 또는 그 라인을 따라 뭔가를 제출하는 영리한 방법을 찾고 있습니다.

이 내용을 HTML & JavaScrip (PHP가 필요한 경우 &)에 작성하려고합니다. 누구든지 내 발을 젖게하기 전에 (과거 경험 등에서) 이것을 달성하기위한 최상의 경로를 제안 할 수 있습니까? 이를 달성하기 위해 시간 & 제안

+0

페이지 넘김 + 쿠키/localStorage + 검토 페이지 – zzzzBov

+0

각 단계를 개별 양식으로 작성하고 완료되면 각각을 ajax를 사용하여 제출하십시오. – Birey

+0

javascript를 사용하여 여러 부분으로 구성된 양식을 한 번 만들었습니다. 여기서는 일단 섹션이 완료되면보기를 숨기고 마지막 페이지에 제출 단추를 표시했습니다. – bozdoz

답변

1

가장 좋은 방법에 대한

덕분에 별도의 세 가지 형태의 각 페이지에 대해 하나를 가지고하는 것입니다. 각 양식을 제출하면 serialized() 양식 데이터가 들어있는 jQuery를 사용하여 서버의 PHP 페이지에 post() 요청을하십시오. 이 PHP 페이지는 검색을 위해 나중에 데이터베이스의 양식 내용을 저장합니다.

ajax 요청이 성공하면 양식의 다음 페이지를 표시하고 그렇지 않은 경우 사용자에게 오류를 표시합니다.

는 또한 당신은 저장 설문 조사의 임시 결과에 대한 서버 지원이 필요 .post().serialize()

1

에 읽기. 사용자가 다음 파트를 제출하면 새 응답을 쿼리에 간단하게 추가 할 수 있습니다. 트릭은 버려진 쿼리를 감지하는 것이지만 설문 조사가 24 시간 내에 완료되지 않으면 사용자가 브라우저를 닫은 것으로 가정하고 향후 데이터를 추가하지 않을 것이라고 생각합니다.

서버에 지속성을 구현해야 SQL 데이터베이스가 수백만 가지의 PHP에 대한 최상의 옵션입니다.

1

질문을 올바르게 이해하면 같은 페이지에 마법사의 동작이 나타나려고합니다.이 경우 세 가지 형식을 사용할 수 있습니다.

ajax 호출을 수행 한 후 일부 임시 데이터베이스 테이블에 채워진 데이터를 저장합니다. 마지막으로 사용자가 임시 테이블 데이터를 대조하고 주 테이블에서 유지할 수 있습니다.

사용자가 모든 단계를 완료하지 않은 경우 특정 기간이 지난 후에 임시 테이블을 정리하거나 일부 BI를 끝내기 위해 '완료되지 않음'테이블에서 이동할 수 있습니다. 자료.

1

응답을 직렬화하고 데이터베이스 {id, stage1 data, stage2 data, last_entry_timestamp}에 저장합니다. 그 검증을 가정

는 항목이있는 경우

  • 1 단계 내가 확인 할 데이터를 저장하기 전에 각 단계에서 수행, 그렇지 않은 경우하면 직렬화 된 스테이지 1 정보를 새 항목을 만들고, 저장하고 타임 스탬프를 설정 그렇지 않으면 1 단계 정보를 검색합니다.
  • 2 단계 설정하지 않으면 생성 된 항목을 serialize 된 stage2 정보로 업데이트하고 타임 스탬프를 설정합니다. 그렇지 않으면 검색 및 업데이트합니다.
  • 3 단계 1 단계와 2 단계 정보를 검색하여 제출합니다. 그런 다음 해당 항목을 삭제합니다.

마지막으로 나는 X 시간이 넘은 모든 항목을보고 제출하고 항목을 삭제하도록 cron 작업을 설정합니다.

관련 문제