php validation

괜찮아 이제 우리가있는 곳에서, 우리가 보안 검사를 통과 한 과정에 있습니다

우리는 우리의 데이터를 위생 처리했습니다 우리는 그들의 데이터를 위생 처리합니다 HTML 엔티티와 이메일 필터를 사용하면됩니다 이제 귀하의 데이터를 검증하는 것이 가장 큰 단계입니다 양식 정보가 중요합니다

가치가 있습니다 내 생각에, 아마존 닷컴과 당신 가서 주문을하면 배송 주소를 기억하는 것을 잊어 버리고, 주문은 어떻게 되나요? 아니면 신용 카드 정보를 잊어 버렸습니다 어떻게됩니까? 이제 그들은이 값들이 채워 졌는지 확인합니다 정보가 돈이되기 때문에 이제 우리의 목표는 오류의 양을 제한하는 것입니다

사람을 보여줄 사람이 있다면 거기에 있습니다 즉시 수정하도록하십시오 이제 우리가 할 수있는 일 중 하나는 사용자가 라디오 버튼 하나를 선택할 수있는 다른 객체, 그래서 그들은 그것을 입력 할 필요가 없습니다 우리는 그들이 정확히 하나를 선택했다는 것을 압니다 목록 상자, 남 벌링턴에 살고있는 사람 있습니까? 당신이 South Burlington에 살고 있다면, 우편 주소를 적을 때 어떻게 철자합니까? 벌링턴 남쪽 공간을 입력합니까? 아니면 S

Burl, BURL입니까? 그들은 모두 South Burlington입니다 그리고 어떤 인간도 그들을 인식 할 것입니다 그러나 컴퓨터는 그렇지 않을 것입니다 그래서 우리는 실제로 모든 도시를 나열하는 목록 상자를 가질 수 있습니다 지금 버몬트에서는, 말하자면, South Burlington이 있습니다

우리는 단지 그것을 선택합니다 따라서 실제적으로 우리가 얻을 수있는 오류의 수를 제한하는 데 도움이됩니다 체크 박스는 우리에게 똑같은 일을합니다 위의 모든 것에 대한 디폴트 값을 가짐으로써 간단하게 할 수 있습니다 이제, 대부분의 경우, 우리를 떠나는 것은 텍스트 상자입니다

텍스트 영역 및 파일 찾아보기, 우리가 실제로 그것들에서 무엇을 확인할 수 있습니까? 상자가 비어 있는지 확인할 수 있습니다 우리는 값이 텍스트인지 확인할 수 있습니다 상자에 텍스트가 있거나 상자에있는 숫자입니까 아니면 둘 다입니까? 예를 들어, 패스워드는 일반적으로 텍스트 번호와 특수 문자 및 특정 길이 그래서, 우리는 그 가치들을 그것이 무엇인지에 비교할 수 있습니다 그것이 범위 내에 속하는가, 1 학년 때 0에서 100 사이 라고요? 내 말은, 당신은 0보다 낮은 등급을 얻을 수없고 100보다 높은 점수를받을 수 없다는 것입니다

그것들은 수학입니다 학년의 특별한 경우에, 실제로 최대 길이 속성을 3으로 설정할 수 있습니다 1,000 명이 들어오는 것을 막을 그러나 여전히 세자를 가진 101 그래서, 우리는 여전히 'if'진술을 항상 확인해야합니다 값에 특정 문자가 포함되어 있습니까? 전자 메일 주소의 경우와 마찬가지로 실제로 text@text

text입니까? 실제로 becom 할 필요는 없지만, 그것은 무엇이든 할 수 있습니다pmp를 허용하지 않기 때문에 파일 확장자는 jpeg 또는

png입니까? 좋아, 원한다면 확인해 볼 수있어 이 값이 여러 문자가되어야하는 것처럼 특정 길이 여야합니까? 우리는 그것의 문자열 길이를 찾을 수 있습니다 최소 길이가 있습니까? 그것은 2보다 적습니까? 그것은 20보다 큰가요? 20 세 이상이므로 최대 길이와 사람이 그 이상 입력 할 수 없습니다, 하지만 당신은 여전히 ​​그것을 확인할 수 있습니다 그래서, 내가 한 것은 당신을 위해 많은 검증 기능을 만들었습니다 그래서 당신은 기능을 조금 이해할 수 있습니다

우리는 그것들을 많이 사용하고 당신은 당신 자신을 쓰지 않았습니다, 하지만 우리는 더 많이 사용할 것입니다 그냥 좀 보자 그래서, 제가이 파일에 가지고있는 첫 번째 것은 당신이 포함하는 것입니다 나는 PHP End Of Line 표시를 인쇄하고 있는데, BEGIN에는 유효성 검사 기능, 다른 빈 공간, 마지막으로 END에 검증 기능을 포함시킵니다 왜 그런지 알아? 이 방법으로, 무언가가 작동하지 않으면, 당신은 당신의 페이지 소스를보고 단순히 아래로 스크롤 할 수 있습니다

BEGIN include, END 포함을 찾으십시오 당신이 그 둘을 본다면, 여기에 아무런 문제가 없다 계속 움직여 라 자, 우리가 이것들을 볼 때, 그들 모두는 거의 똑같이 작동합니다 그들은 모두 진실하거나 거짓으로 돌아갑니다

그래서, 함수 verifyAlphaNum, 그리고 그들 모두 하나의 매개 변수를 가지고, $ testString 자, 내가하고있는 일은 정규식 일치입니다 그것이 보이는 모든 펑키 캐릭터가있는 곳입니다 $ testString 또는이 함수에 전달한 값 내에서 그래서, 우리가 찾고자하는 것은, alnum이라는 키워드가 있습니다

모든 알파벳 문자, 모든 숫자를 의미합니다 우리는 대쉬를 가지고있다 우리에게는 기간이 있습니다 우리는 빈 공간이 있습니다 우리는 작은 따옴표를 가지고 있습니다

우리는 앰퍼샌드 기호를 가지고 있습니다 우리는 세미콜론을 가지고 있습니다 우리에게는 파운드 기호가 있습니다 그래서, 그것들 중 누구도 좋다 이러한 범주에 속하지 않는 무언가가 있다면, 실패하거나 false를 반환합니다

나는 안으로 추가해야했다, 기술적으로 작은 따옴표는 결코 거기에 없다 왜냐하면 우리는 항상 HTML 엔터티를 통해 모든 것을 전달하기 때문입니다 따라서 작은 따옴표는 실제로 & quot; 그래서 나는 그것들을 작동시키기 위해 그 기능들에 그것들을 추가했는지 확인해야했다 이제 다음은 verifyEmail 함수입니다 그리고 모든 웹 사이트 당신이 그들의 모양에 기입하기를 바라는 이메일 주소를 가지고있다

PHP는 특정 정규식이 이미 구축되어 있으며, FILTER_VALIDATE_EMAIL, 그것이 무엇인지 불렀습니다 방금 filter_var를 사용하면, String 텍스트와이 정수 true 또는 false를 반환합니다 그게 유효한 이메일인지 아닌지 번호를 확인하려면, 우리가 할 수있는 일은 숫자입니다 그래서, 당신이 보내는 모든 것을 취할 것입니다

그것이 숫자로 변환 될 수있는 한, 그것은 괜찮다고 말할 것입니다 많은 사람들이 결국 자신의 양식에 전화 번호를 넣고, 그래서 이걸 추가했습니다, 확인합니다 모두가 실수를 저질렀던 가장 큰 일은 이것이었습니다 거대한 정규 표현식입니다 거대한 것입니다

나는 너에게 설명 할 것이 아니라, 바로 그곳에있다 PHP 페이지에서 찾은 링크를 삽입해야합니다 자, 당신이 명심해야 할 한 가지는, 미국 전화 번호는 숫자로 시작할 수 없습니다 왜냐하면 우리가 먼거리를 구하기 위해 사용하기 때문입니다 따라서 전화 번호로 시작하는 지역 번호 코드는 없습니다

그러나 거의 모든 사람들이 알아 차린 것은 그들은 그들의 시험을 치러 갈 것이며 그들은 하나, 둘, 셋, 지역 번호; 하나, 둘, 셋, 그리고 하나, 둘, 삼 사; 우리가 1 번부터 시작했기 때문에 항상 실패합니다 그래서 우리는이 함수들을 사용하려고합니다 그리고 당신이 다른 것을 할 필요가 있다면, 새로운 기능을 만들고 여기에 추가하면됩니다 사실, 내 강의 노트에, 표현 페이지를 설명하기 위해 많은 예제 링크를주었습니다 정규 표현식이있는 좋은 기회가있는 곳 아마도 당신이 필요로하는 이미 만들어 졌을 것입니다

그리고 당신은 여기에 올 수 있고 그들의 예를 찾을 수 있습니다, 정규식에 대해 더 자세히 알고 싶다면 자습서를 수행 할 수도 있습니다 훌륭한 웹 사이트입니다 따라서 Google 검색을 수행 할 가능성이 있습니다 그러나 나는 아마 여기에 갈 것이다 많은 예제들, 해당 정규 표현식 페이지 및 검색 권한 당신이 필요로 할 수도있는 정규 표현식을 위해, 그런 다음 유효성 검사 기능에 추가 할 수 있습니다

우리가 이해할 수 있도록 간단한 것을 살펴 봅시다 그래서 우리가 여기에있는 것은 소문자에서 A에서 Z로 조금 정규 표현식을 얻었습니다 대문자 A ~ Z, 그리고 나서 공백을위한 s의 종류, 내 생각 엔, 따라 가자 그래서 그들은 10 단계로 나누었습니다 따라서이 첫 번째 슬래시 수단은 정규 표현식을 시작하고 종료합니다

그래서 그 하나 캐럿은 시작 문자로 시작한다고 말합니다 그래서, 당신이 비교하고있는 String이 무엇이든간에, 캐럿은 처음부터 시작하거나 끝에서 시작하거나 중간에서 시작한다고 말합니다 대괄호는 단일 문자를 일치시킵니다 브래킷 내부의 모든 가능성을 a ~ z는 소문자를 의미하고, A에서 Z는 대문자를 의미합니다

S는 공백을 의미합니다 따라서 문자와 공백 만 일치시킵니다 바로 여기에 더하기 기호가 있으면 이전에 언급 된 것 중 하나 이상이 허용됩니다 그래서, 당신은 하나 이상의 문자를 가질 수 있습니다, 당신은 하나 이상의 공간을 가질 수 있습니다 달러 기호는 문자열 끝에 일치하며, 정규식이에 적용됩니다

그래서, 처음부터 끝까지 전체 문자열을 살펴 보겠습니다 글자와 공백 만 알파를 검증하고 싶다면, 실제로 Alpha를 확인합니다 내 생각 엔 그게 내장 된 것 같아, 알파를 넣어 놨어 하지만 당신은 ~ 할 수있어, ~부터 Z, 빈 공간이 필요하지 않습니다

자, 왜 우리가 할 수있는 일은 z와 A to Z입니다 이것은 ASCII라고 불리는 것에 들어갑니다 ASCII는 정보 교환을위한 미국 표준 코드의 약자입니다 컴퓨터는 아무 것도 모른다는 것을 기억하십시오 컴퓨터에 대한 모든 것은 일련의 0과 1입니다

이는 숫자 여야 함을 의미합니다 음, ASCII 차트는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 배열입니다 그래서, 그것이 만들어지는 방식을 보려고 할 때, 우리는 A에서 Z까지 갈 수 있습니다 우리는 a에서 z로 소문자로 갈 수 있습니다 기술적으로, 자본 A에서 소문자 z로 간다면, 우리는이 모든 특수 문자들을 포함 할 것입니다

거기에 다른 문자 집합 차트가 있지만 그것의 종류의 그들이 뭘 기반으로하고 그들은 모두 숫자와 관련이 있습니다 자, 조심해야 할 것은, 이 유효성 검사 함수를 만들었습니다 topphp에 포함시켜야합니다 그래서 여기서 제가하는 일은 그것이 형식 일 때만 그것을 포함하는 것입니다

따라서, 경로 부분 인 filename이 form과 같은 경우, 양식 라이브러리를 포함하여 인쇄 할 예정입니다 왜 그걸 출력해야합니까? 따라서 무언가가 작동하지 않고 지불 한 경우 소스와 당신이 그것을 찾으십시오, 그것은 나타나나요? 보안 문제가 나타 납니까? 그들이 나타나지 않으면, 그러면 옳지 않은 것이 있습니다 일반적인 실수 중 하나는 특히 최종 프로젝트에 있습니다 양식은 끔찍한 이름이기 때문에 양식이라고 부르지 않습니다 그것을 등록 또는 피드백이라고 부르십시오

피드백 php, registeredphp 보다 적절한 이름을 사용하려고 할 때 여기에서 같은 이름을 사용했는지 확인하십시오 일단 보안 검사를 통과하면, 우리가 원하는 것은 당신이 우리의 데이터를 sanitize하고 그것의 유효성을 검증하기를 원한다는 것입니다

유효성 검사를 통과하지 못하면, 그들은 양식으로 다시 보내고 싶습니다 실수로 값을 다시 표시하십시오 유효성 검사를 통과하면, 우리는 계속 전진하고 저축 할 것입니다 따라서 우리가하는 일은 오류를 추적해야합니다 그래서 우리가하는 일은 여러분이 가지고있는 모든 폼 요소에 대한 것입니다

당신이 사용하는 변수를 취하고 그 끝 부분에 오류를 간단히 나타낼 수 있습니다 그것은 단지 명명 규칙 일뿐입니다 이제, 나는 그것을 false와 동일하게 설정할 것입니다 다시 말하지만, 나는 낙관주의 자가 될 것입니다 따라서 모든 양식 요소에 대해 수행됩니다

우리는이 작업을 한 번만하면됩니다 우리는 사람이 가지고있는 모든 실수를 견딜 수있는 배열을 만들고 싶습니다 우리는 그들이 당연히 가지고 있지 않기를 바라고 있으며, 현재로서는 비어 있습니다 이제 섹션 2가 성장합니다 섹션 2b는 말해야합니다

당신이 가지고있는 폼 요소의 수에 따라 위생적으로 커집니다 따라서 각 양식 요소에 대해 위생 처리를해야합니다 대부분의 기술자들은 단순히 이전에했던 것처럼 HTML 엔티티 그러나 이메일의 경우 우리는 그 filter_var를 사용할 것입니다 그래서, 여기에 이메일을 filter_var POST txtEmail과 똑같이 보내고 있습니다 그런데 일반적인 실수는 코드를 복사하고 붙여 넣거나 실수로 실수를 한 적이 있습니다

해당 게시물 이름을 양식 아래에 HTML과 일치 시키십시오 이제 섹션 2c는 양식의 정확성을 검사하는 곳입니다 이것은 또한 위생 처리 섹션보다 훨씬 커집니다 sanitize 섹션은 ​​단지 하나의 라인이기 때문에, 기술적으로는 두 줄이지만 모든 양식 요소에 대해 두 번째 줄을 찾지 못했습니다 여기에 하나가 있습니다

2, 3, 4, 5, 모든 양식 요소에 대해 6, 7 줄, 그래서이 섹션은 상당히 커집니다 이제 이메일 주소의 경우, 우리가 할 수있는 모든 일은 확인을위한 것, 비어있는 것, 그들은 그것을 입력했고 올바른 형식입니까? 이메일 주소가 맞는지 알 수있는 유일한 방법은 실제로 그들에게 전자 메일 메시지를 보내고 응답 할 때까지 기다려야합니다 이 클래스의 범위를 벗어나지 만 실제로는 우리가 이메일을 보내는 방법을 배울 수 있도록 양식을 보낼 것입니다 좋아, 그럼 그걸 보자 그것은 3 단계 과정입니다

(1) 귀하의 수표를 수행하십시오, (2) 오류 메시지를 저장하고 (3) 플래그를 지정하십시오 오류 점검을 수행하고 오류 메시지를 저장 한 후 플래그를 지정하십시오 그래서, 여기에 이메일이 있는지 확인하고 있습니다 아무 것도 없으며 우리가 위생 처리 한 것을 기억하십시오 그래서 POST 배열에 있던 것은 무엇이든간에, 그 안에 무언가가있는 한, 우리는 다음 수표로 갈 것입니다

그러나 비어있는 경우, 우리는 에러 메시지 배열을 터뜨릴 것이다 우리는 그것의 끝에 추가 할 것이지만, 그 순간에는 아무 것도 없습니다 우리는 "귀하의 이메일 주소를 입력하십시오"라고 입력 할 것입니다 우리는 그걸 신고 할거야

실수가있어 더 이상 점검하지 않아도됩니다 그러나, 거기에 뭔가가 있다면, 우리는 여기에 와서 그 기능 확인 이메일을 확인하고 호출 할 것입니다 우리는 그것을 이메일로 보낼 것이고, 그것이 지나가고 말하면, 예, 유효한 이메일 주소입니다 우리는 가야한다 그러면 우리는 그것을 건너 뛸 것이다

그렇지 않으면 우리는 "오, 검증에 실패했습니다 "라는 오류 메시지가 표시됩니다 귀하의 이메일 주소가 정확하지 않은 것 같습니다 자, 여기에 2d 섹션이 폼 유효성 검사를 통과 할 것입니다 우리는 그 순간에 아무 것도하지 않을 것입니다

빈 공간이 많이 생기 겠지만 오류 메시지가 없다면, 어떤 종류의 선언문이 배열이 비어 있다고 말합니까? 그럼 우리가 여기 들어올거야 실수가 없기 때문에 처리하십시오 디버그가 양식을 인쇄하려고하는 것처럼 유효합니다 이 IF 문에는 열린 중괄호 닫는 중괄호? 바로 가기입니다 일반적인 것이 항상 최고는 아니지만, IF 문을 가지고 있다면 어떻게됩니까? 한 문장 만 중괄호가 필요하지 않습니다

모두가 곤경에 처하는 것은 그들이 결정하기를 원하는 것입니다 다른 것 그리고 그들은 또 다른 print 서술문을 추가 할 것입니다 여기와 나는 이것이 언제나 일어나는 것을 발견했다 두 개 이상의 문장이있는 경우 중괄호를 추가해야하기 때문입니다 그런데 일반적인 실수는 당신이 브래킷을 닫지 않는 것입니까? GitHub 커밋과 그 줄 번호에주의를 기울이고 있는지 확인하십시오

이제, 우리가 그것을 표시하는 섹션 3으로 갈 때, 우리는이 훌륭한 IF 문을 if btnSubmit을 설정 한 다음 양식을 제출하고, 우리는 두 섹션 모두를 살펴 보았습니다 그리고 그것은 빈 오류 메시지입니다, 거기 엔 아무것도 없어 그런 다음 귀하의 정보에 대해 감사드립니다 우리는 사용자에게 약간의 정보 피드백을 제공하고 있습니다 이 데이터의 사본이이 이메일 주소로 발송되었습니다

우리는 아직 실제로 보내지 않았지만 우리는 그렇게 할 것입니다 디스플레이 준비 만하고 있습니다 그러나, 그것이 제출되고 실수가 있다면, 우리는 다른 사람에게 내려갈 것입니다 우리는 또한 우리가 처음으로 다른 사람에게 내려옵니다 포럼에 제출하지 않았기 때문에 포럼에 올 수 있습니다

그래서, 우리는 우리의 양식을 전시하고, 오늘 등록하고, 우리 연구에 도움이 될 것이고 코드의 나머지 부분은 모두 동일합니다 그러나 우리가하는 일은 오류 메시지, 즉, 배열에 무언가가 있다면, 우리는 div id equals 오류를 출력 할 것입니다 양식에 다음과 같은 실수가있을 수 있습니다 각 오류 메시지는 우리 배열의 이름이기 때문에 하나의 오류가 단순히 목록 항목에 인쇄되기 때문입니다 이것은 1, 2, 3, 4와 같은 오류를 나열합니다

그들은 단순히 실수를 볼 수 있기 때문에 볼 수있는 사람에게는 탁월합니다 그 (것)들 및 그 (것)들이 모양에 나타날 질서를 목록으로 만드십시오 더 중요한 것은 누군가가 장님이라면 양식에있는 순서대로 실수를 들어라 왜냐하면 이제 우리는 양식에 들어가기 때문에, 우리가하고 싶은 일은 GitLab 커밋이나 GitHub 커밋에서 볼 수 있습니다 라벨의 안쪽에 있습니다

전자 메일 오류 플래그가 설정되면이 작은 PHP가 있습니다 처음에는 거짓을 초기화하는 것을 잊지 마십시오 플래그가 true로 설정된 실수가있는 경우 유효성 검사 프로세스 이 플래그를 true로 설정하면 클래스가 실수가 아닌 단순히 인쇄 할 것입니다 수업을 인쇄하는 것은 아무 것도하지 않습니다

우리는 CSS를 백업해야합니다 그래서, 여기 실수로 만든다면, 배경색을 빨간색으로, 텍스트를 – 경계선이 검정색으로, 텍스트는이 색이며, 나는 정확히 어떤 색이 있는지, 아마도 흰색 – 빨강을 모른다 그 후에는 0이 있기 때문에 이것은 더 진한 빨간색입니다 이것은 많은 백색을 가지고있다, 2 개의 F로 대부분은 빨갛게 될 것입니다 이것은 정말 멋지다

사실 많은 사람들이 이렇게 말하기 때문에 다소 재미 있습니다 "아, 못 생겼어 그것은 실수이기 때문입니다 우리는 눈에 띄기를 원했습니다 우리는 사용자들에게 "죄송합니다

그것을 고치고 제출하자 " 나는 정말 큰 형태로 채울 때 너무 짜증이났다 제출을 누른 다음, 양식은 여전히 ​​내 눈앞에 표시되며 여전히 나는, "좋아, 내가 뭘 잘못 했니?" 내 실수는 어디 갔지? 나는 그것을 볼 수 없다 이런 작은 별을 가지고, 빨간 글씨로 된 작은 별이 작동하지 않습니다 그것이 내가 원하는 모든 것이기 때문에 그것을 빨리 고칠 수 있도록 그것을 보이게하십시오

그래서, 당신이하려고하는 것은 보안 검사입니다, 사실 5 단계에서, 보안 검사 결과를 거짓으로 반환하여 죽게합니다 그렇다면 6 단계에서 단순히 그것이 사실이라고 말했습니다 그래서 그것이 작동하거나 작동한다는 것을 의미합니다 커밋 7은 모든 유효성 검사가있는 가장 긴 것입니다 이 시점에서 귀하의 양식이 무엇을 할 것인지, 그것은 양식을 표시하는 것입니다, 당신은 뭔가를 입력 할 수 있습니다

무언가를 입력하거나 공백으로 두드려서 제출하십시오 당신은 당신의 이메일 주소를 얻는다 잘못된 이메일 주소를 입력하십시오 아니요, 이메일 주소가 잘못되었다고 말할 것입니다 유효한 이메일 주소를 입력하면 정보를 보내 주셔서 감사합니다

그래서, 꽤 큰 걸음, 거기에 몇 가지 걸림돌이있어하지만 잘하면 이 비디오와 장은 모두 당신을 도왔습니다 행운을 빕니다