서버 측에서 유효성을 검사해야합니다. 클라이언트 측 유효성 검사는 선택 사항입니다. 필드에 대한 유효성 검사 유형을 선언하고 양식에 대한 일반 유효성 검사기를 작성할 수 있습니다. 내가 무슨 뜻인지 모르겠다면 AngularJs의 선언적 코드 빌드를 살펴보십시오. 그것은 폼을 만드는 가장 좋은 방법이며 Angular는 폼을 작성하기위한 좋은 프레임 워크입니다. 이 라인에서
http://angularjs.org/
http://docs.angularjs.org/#!/cookbook/advancedform
봐 : 서버 측
<input type="text" name="form.address.line1" size="33" ng:required/> <br/>
<input type="text" name="form.address.city" size="12" ng:required/>,
<input type="text" name="form.address.state" size="2" ng:required ng:validate="regexp:state"/>
<input type="text" name="form.address.zip" size="5" ng:required
validate="regexp:zip"/>
당신은 또한 양식 필드, 검증 방법 및 오류 문자열을 포함하는 몇 가지 구조를 정의 할 수 있습니다 각 필드. 그런 다음 루프에서 정보 구조에 따라 각 필드의 유효성을 검사하십시오. 그렇게 구축 된 양식을 쉽게 관리 할 수 있습니다. PHP에서
예 :
양식 데이터 :
$formData = array (
array(
'ID' => "name",
'validate' => '/.+/',
'label' => 'Your name',
'errorMsg' => "This field is required",
'type' => 'text'
),
array(
'ID' => "Phone number",
'validate' => '/^[0-9+ ]+$/',
'label' => 'Numer telefonu',
'errorMsg' => "Please provide proper telephone number",
'type' => 'text'
)
);
검사기 및 (여기에서 간단하고 지저분한 코드 미안) 형태 발생기 :
$s = '';
foreach ($formData as $input){
$s .= sprintf('<label for="%s">%s</label>',$input['ID'],$input['label']);
if (isset($_POST[$input['ID']]) && !empty($input['validate']) && !preg_match($input['validate'],$_POST[$input['ID']])){
$error = true;
$s .= sprintf('<div class="formErrorValidate">%s</div>',$input['errorMsg']);
}
if (isset($_POST[$input['ID']])) $htmlMsg = str_replace('%'.$input['ID'].'%',$_POST[$input['ID']],$htmlMsg);
if ($input['type'] == 'textarea'){
$s .= sprintf('<textarea name="%s" id="%s">%s</textarea>',$input['ID'],$input['ID'],(isset($_POST[$input['ID']])?$_POST[$input['ID']]:''));
} else {
$s .= sprintf('<input type="%s" name="%s" id="%s" value="%s"/>',$input['type'],$input['ID'],$input['ID'],(isset($_POST[$input['ID']])?$_POST[$input['ID']]:''));
}
}
날 wounder 만든다 당신이 살기 위해 무엇을합니까;) 나는 당신의 말을 이해합니다. 나는 사이트가 나가기 전에 모든 것을 검증해야합니다. 지금은 다음 ive – Shogun