권장 : ASP 다중 쿼리 솔루션 우리는 종종 여러 쿼리 문제를 겪고 있으며 긴 SQL 문은 종종 승려를 혼란스럽게 만듭니다. 특히 클라이언트 부품이 쿼리 조건을 채우는 경우 일반 방법을 사용하는 것이 훨씬 더 어려울 것입니다. 다음은 1 = 1의 정체성을 영리하게 사용 하여이 문제를 해결하기 위해 1 = 1 (실제로는 많이, 진실의 가치를 갖도록)을 사용합니다. 텍스트 요약 '제목 정보 제목'com
ASP에서 여러 반복 된 양식을 제한하는 방법은 무엇입니까? 인터넷에서 우리는 매일 수많은 양식을 만나며 대부분의 사람들이 사용자가 동일한 양식을 여러 번 제출하는 것을 제한하지 않는다는 것을 알 수 있습니다. 이러한 제한이 없으면 때때로 이메일 서비스에 대한 중복 구독 또는 중복 투표와 같은 예상치 못한 결과를 낳을 수 있습니다.
이 기사에서는 ASP 응용 프로그램에서 현재 세션 중에 사용자가 동일한 양식을 여러 번 제출하지 못하게하는 간단한 방법에 대해 설명합니다. 주로 4 개의 서브 루틴으로 구성됩니다. 간단한 응용 프로그램에서는이 코드를 포함 파일에 배치하고 직접 인용하면됩니다. 보다 복잡한 환경의 경우 기사가 끝날 때 개선 제안을 제공 할 것입니다.
1. 기본 작업 과정
다음으로, 우리는이 4 개의 서브 루틴을 차례로 논의합니다.
(ASP는 다중 반복 형태 제출을 제한합니다) 초기화
여기서는 세션 객체에 두 가지 변수를 저장하려고합니다.
각 양식은 FID라는 고유 식별자에 해당하며 카운터는이 값을 고유하게 만드는 데 사용됩니다.
form 양식이 성공적으로 제출 될 때마다 FID는 사전 개체에 저장되어야합니다.
우리는 전용 프로세스를 사용하여 위의 데이터를 초기화합니다. 각 서브 루틴은 미래에 호출하지만 실제로는 각 세션에서 한 번만 실행됩니다.
다음은 인용 된 내용입니다. sub initializefid () isobject (session (fidlist))이 아닌 경우 세션 설정 (fidlist) = server.createobject (scripting.dictionary) 세션 (FID) = 0 끝 If 종료 서브 |
(ASP에서 양식의 여러 반복 제출 제한) 양식 생성을위한 고유 식별자
다음 함수 gernatefid ()는 양식에 대한 고유 한 플래그를 생성하는 데 사용됩니다. 이 함수는 먼저 FID 값을 1 만 추가 한 다음 다음을 반환합니다.
다음은 인용 된 내용입니다. 함수 generatefid () initializefid 세션 (FID) = 세션 (FID) 1 GenerateFid = 세션 (FID) 엔드 기능 |
(ASP에서 제한된 양식의 다중 반복 제출) 제출 된 양식 등록
양식이 성공적으로 제출되면 고유 식별자가 사전 개체에 등록됩니다.
다음은 인용 된 내용입니다. sub registerfid () 희미한 strfid initializefid strfid = request (fid) 세션 (fidlist) .add strfid, now () 종료 서브 |
(ASP는 양식의 다중 반복 제출을 제한합니다. 4) 양식이 반복적으로 제출되는지 확인
사용자가 제출 한 양식을 공식적으로 처리하기 전에 FID가 사전 객체에 등록되어 있는지 확인해야합니다. 다음 CheckFid () 함수는이 작업을 완료하는 데 사용됩니다. 등록 된 경우 False를 반환하고 그렇지 않으면 true를 반환합니다.
다음은 인용 된 내용입니다. 함수 checkfid () 희미한 strfid initializefid strfid = request (fid) CheckFid = Session (Fidlist) .Exists (strfid) 엔드 기능 |
2. 사용 방법
위의 기능이 사용되는 두 곳, 즉 형태 생성 및 결과 처리 시점이 있습니다. 위의 4 개의 서브 루틴이 포함 파일 양식에 넣었다고 가정하면, 다음 코드는 FID 값에 따라 양식을 양식을 생성할지 여부를 결정합니다. 설명하는 처리 프로세스는 대부분의 ASP 응용 프로그램에 적합합니다.
다음은 인용 된 내용입니다. < %옵션 명시 적 %> <!-#include file = forms.inc <html> <헤드> <title> 양식 제출 테스트 </title> < /머리 <body> < % 요청 (FID) = IF IF IF DECHOND 생성 또 다른 ProcessForm 끝 If %> < /body> < /html> |
GenerateForm은 양식을 생성 할 책임이 있으며 양식에는 다음과 같은 숨겨진 FID가 포함되어야합니다.
다음은 인용 된 내용입니다. < % sub generateform () %> <양식 action = < %= request.servariables (path_info) %> 메소드 = get> <입력 유형 = 숨겨진 이름 = FID 값 = < %= generateFid () %>> <입력 유형 = 텍스트 이름 = param1 value => <입력 유형 = 제출 값 = OK> < /form> < % 종료 서브 %> |
ProcessForm은 양식을 통해 제출 된 컨텐츠를 처리 할 책임이 있지만 처리하기 전에 먼저 CheckFid () 호출하여 현재 양식이 제출되었는지 확인해야합니다. 코드 클래스는 다음과 같습니다.
다음은 인용 된 내용입니다. < % 하위 프로세스 형식 () checkfid ()이면 응답. 입력 한 내용을 작성하십시오 |
공유 : ASP에서 HTML을 생성하는 방법은 무엇입니까? 이미 HTML을 생성하는 많은 뉴스 시스템이 있지만 모두 템플릿을 사용합니다. 이 기능은 ASP 페이지에서 생성 된 HTML 코드를 HTML 파일로 저장하므로 HTML을 생성하는 뉴스 시스템을 쉽게 완성하기 위해 원본 페이지를 변경할 필요가 없습니다. ^ _^ 코드는 비교적 짧기 때문에 다음 인용 된 내용은 여기에 주석을 달지 않습니다. % '대상이있을 때