2009-06-10 7 views
1

등록 페이지를 설정 중이며 주로 PHP를 사용하여 데이터를 확인하고 있습니다.로드 줄이기 위해 jquery와 php를 사용합니다.

일부 유효성 검사에 클라이언트 기반 언어를 사용하면 서버의 작업 부하가 줄어들 것이라는 것을 알았습니다. jquery에 대한 지식이 많지 않지만 전자 메일의 올바른 구문 (예 : '@'및 재미있는 문자 없음)을 결정하는 코드를 찾고 있습니다.

또한 jquery에 특정 이벤트 (클릭시 키 업)가있을 때마다 PHP 스크립트를 미리 작성하고 다시로드하지 않고 결과를 표시하는 함수가 있습니까? 나는 사용자에게 더 복잡한 기능에 대한 빠른 피드백을 줄 수있는 무언가를 찾고있다. (사용자 이름이 존재 하는지를 확인하기 위해 이메일의 DNS를 찾는 것과 같다.)

누군가 나를 가리킬 수 있는가? 이것에 자원에?

답변

9

당신이 여기 찾을 수 JQuery와에 대한 매우 널리 사용되는 검증 플러그인이있다 :

http://plugins.jquery.com/project/validate

그것은 내장 많은 ​​"일반적인"유효성 검사 규칙을 포함하고, 당신은 당신의 자신을 추가 할 수 있습니다. 이메일은 기본적으로 있습니다.

항상 서버 측에서 항상 유효성을 검사해야합니다. 클라이언트 측 유효성 검사를 추가하여 응답 속도를 높일 수는 있지만 악의적 인 사용자는 자바 스크립트 유효성 검사를 쉽게 무시할 수 있습니다.

17

클라이언트 측 유효성 검사는 절대로 의존해서는 안되지만 사용자 환경을 향상시키기 위해 존재해야합니다. 클라이언트 측 코드가 쉽게 우회되므로 서버에서 유효성 검사를 수행해야합니다.

+1

확실히 사실입니다. 서버 측 유효성 검사 없이는 절대로 안됩니다. 그러나 클라이언트가 있으면 종종 사용자에게 오류를 지적하는 것이 쉬워지고 페이지를 사용에보다 반응하게 만듭니다. –

+0

+1 * 결코 * * 적 * * 적 * 어두운면에서 무엇이든 의지하십시오. 그것은 신뢰할 수 없습니다. –

+0

데이터 유효성 검사 루틴으로 인해 성능/성능 저하 문제가 발생하는 경우 유효성 검사가 일반적으로 "비싼"작업이 아니기 때문에 이러한 루틴을 프로파일 링하여 문제를 찾아야합니다. –

0

PHP와 js로 모두 확인해야합니다. 나는 아직도 iE5를 사용하고있는 몇몇 장소/사람들을 보았고, 나는 그러한 경우에 js를 신뢰하지 않을 것이다.

1

답변 제공 TM은 - 유효성 검사 플러그인을 제공하며 항상 서버 측의 유효성을 검사합니다.

어떻게 서버, 아약스을 클릭 이벤트를 수행하는 다음 메시지 표시 : 당신은 아무것도 더 복잡한하려는 경우

$("a.dnscheck").click(function() { 

    $.get('http://blah.com/dnscheck.php', 
      { 'email' : $("input.email").val() }, 
      function(data) { 
       //called on ajax response 
       if(data == 'valid') { 
        //update dom with ok message 
       } else { 
        //update dom with bad email message 
       } 

      }); 
}); 

http://docs.jquery.com/Ajax를 참조하십시오.

관련 문제