2010-01-10 7 views
3

예를 들어 Zend Framework에는 유효성 검사기가있는 양식 요소를 만들 수있는 기능이 있습니다. 그러나 이제 사용자가 잘못된 가비지 데이터를 입력했다고 가정 해 봅시다. 다음에 무슨 일이 일어날까요? JS 부분이 잘못되거나 JS가 사용 중지되고 서버가 가비지 데이터를 수신하게됩니다.인기있는 PHP 프레임 워크는 어떻게 폼 입력 오류를 처리합니까?

"큰"PHP 프레임 워크가 어떻게 개념적으로 이것을 처리합니까? 아는 경우 프레임 워크를 언급하고 설명하십시오. 그것은 많은 도움이 될 것입니다.

오류 메시지는 양식으로 어떻게 반환되며 어떻게 표시됩니까? 그게 기술적으로 어떻게 이루어 집니까? 그것이 이런 식으로 가야 이론적으로 내 관점에서

:

  1. 사용자는 사용자가 양식 제출
  2. 쓰레기를 입력 (JS 검증이 실패는, JS가 비활성화 무엇이든)
  3. PHP 스크립트 쓰레기 입력을받습니다.
  4. PHP 스크립트는 서버 측에서 가비지 입력의 유효성을 검사합니다. 모든 필드 = FALSE, GARBAGE.
  5. 필드 유효성 검사가 실패 할 때마다 PHP 스크립트는 입력 오류 메시지를 배열에 씁니다.
  6. 오류 메시지 배열은 키가
  7. 스크립트가 양식을로드 양식 요소 이름 때문에 입력 오류로 다시하는지도 (연관 배열)입니다
  8. 양식 스크립트에서 필드 입력 오류를 표시하는 모든 논리가 오류 메시지 배열
  9. 사용자가 아름다운 오류 메시지를보고 가비지를 다시 입력합니다.
  10. 반복해서.
  11. 모든 것이 괜찮을 때까지 스크립트는 데이터를 저장하고 큰 감사 메시지를 표시합니다.

나는 다른 알고 있지만,이 경우, 나는 ;-)

뭔가이 최선의 해결책이 아니다 알려줍니다 알아야합니다.

+0

wwf? 당신은 완벽하게 그 편집과 함께 질문을 변경했습니다. 그것은 ZF가 오류를 처리하는 방법에서부터 다른 모든 것을 어떻게 처리하는지에 이르기까지 다양합니다. – hobodave

+0

첫 번째 대답에는 아무 문제가 없습니다;) 방금 zend뿐만 아니라 모든 프레임 워크에 적용되는 방식으로 질문을 변경했습니다. 내 자신의 것을 개발하면서, 가능한 한 많은 개념을보고 더 발전하기위한 최고의 기반을 찾고 싶습니다. – openfrog

답변

2

먼저 Dojo 지원 양식을 사용하지 않는 한 Zend Framework는 javascript와 아무 관련이 없습니다. JS 유효성 검증은 사용자가 직접 작성하거나 Dojo 사용 양식에 연결합니다.

유효성 검사는 각 ZFE를 반복하고 유효성 검사기를 확인하는 것으로 구성됩니다. 오류가 발생하면 ZFE에 오류 메시지로 저장됩니다. 폼을 다시 표시하면 기본 데코레이터를 사용하는 경우 Zend_Form_Decorator_Errors가로드되어 해당 요소를 오류 메시지와 함께 "데코 레이팅"합니다.

isValid() 메소드로 시작하는 Zend_Form의 소스 코드를 읽는 것이 좋습니다. 무슨 일이 일어나고 있는지 읽고 읽는 것은 매우 간단합니다.

관련 문제