강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

[ ASP ] url 정보의 파라메터 및 쿼리스트링 자유롭게 조정하는 함수
작성자 : M 최고의하루
등록날짜 : 2008.12.19 11:49
7,465

개발 중에 만들어진 함수 입니다.

각 페이지마다 링크걸기가 귀찮고, 소스가 지져분해져서 만들게 되었네요.

 

해당 페이지의 파라메터 정보 즉, 쿼리스트링을 불러오는 함수입니다.

불러온 파라메터의 부분 부분 삭제 및 수정이 가능하여 사용이 편리하다는 장점이 있습니다.

 

이동할 페이지가 정해져 있고 파라메터로 페이지 컨트롤할 경우 ?chn=blog

? 를 붙여 주시면 됩니다. ^-^ 대부분 아시겠지만 ... 1%를 위해서!!

 

* 자주 사용하는 함수명은 짧은게 좋아요 !!

* 페이지 이동을 파라메타로 개발하시는 분에게 권하는 함수입니다.

index.asp -> list.asp (x)

index.asp -> index.asp?mode=list (o)

 

------------------------------------------------------------------------------------------------------------------------------------

 

[2008.03.26] 값 없는 파라메터 필터링

chn=blog&mode=syaku&type=&page=2

위와 같은 파라메터인 경우 &type= 부분은 자동 삭제됩니다.

chn=blog&mode=syaku&page=2

 

[2008.05.29]

값이 없는 파라메터 자동 삭제 버그 수정 (위 방벙 올바르게 안되는 부분 수정)

 

이전 페이지 값 가져 오기

예) 로그인 하지않은 상태에서 특정페이지에 접근하게 되면, 이전 페이지의 파라메터 정보를 읽어

      로그인 페이지로 전송하면 됩니다.

 

[2008.06.30]

쿼리스트링 끝 부분에 & 가 붙는 경우 삭제함.

 

# 원본 소스

<%@LANGUAGE="VBSCRIPT"%>

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><?XML:NAMESPACE PREFIX = O />

 

<% Option Explicit %>

 

<%

'// Parameter execute : 파라메터 쿼리 완성

'// programed by 최석균

'// registered date 2008.03.25

'// upgrade date 2008.03.28

'// http://blog.naver.com/syaku

 

Public Function Para(Ar)

           Dim Reg

           Dim query,reg_query,key,str

           query = Request.ServerVariables("QUERY_STRING")

Set Reg = New RegExp

Reg.Global = True

 

'// 2008.03.26 파라메터 필터링 1차 수정

'//Reg.Pattern = "([A-Za-z0-9_-]+)=(&|$)"

'//query = Reg.Replace(query,"&")

 

'// 2008.05.29 파라메터 필터링 2차 수정

Reg.Pattern = "(&|)([A-Za-z0-9\%\_\-]+)=(&|$)"
query = Reg.Replace(query,"&")
      

         

If IsArray(Ar) Then

For Each key In Ar

                      str = key(0) & "=" & key(1)

                     Reg.Pattern = "(" & key(0) & ")=([^&]+)?"

                     If key(1) = "" Then

                                query = Reg.Replace(query,"")

                     Else                                     

                                query = Reg.Replace(query,str)

                     End If                                  

           Next    

 

'// 2008.05.29 이전 페이지 돌아가기

Else

If Ar = "HTTP_REFERER" Then

                      query = Request.ServerVariables("HTTP_REFERER")

                                         

                     Reg.Pattern = "^(http|ftp|mail|https):\/\/(.*)\/(.*)\?"

                     query = Reg.Replace(query,"")                                     

           End If                        

End If

 

'// 200.06.30 끝부분에 & 붙으면 제거함.

Reg.Pattern = "&$"
query = Reg.Replace(query,"")
          

           Set Reg = Nothing

 

           Para = query

End Function

%>

 

 

# 예제 소스

<%@LANGUAGE="VBSCRIPT"%>

 

<% Option Explicit %>

 

<%

'// Parameter execute : 파라메터 쿼리 완성

'// programed by 최석균

'// registered date 2008.03.25

'// http://blog.naver.com/syaku

 

'// 예제

 

'// 현 파라메터 불러오기

response.write Para("") & "<br>"

'// 결과 : chn=blog&mode=syaku&page=2

 

'// 현 파라메터 일부분 수정하기

response.write Para(Array(Array("mode","kor_no"))) & "<br>"

'// 결과 : chn=blog&mode=kor_no&page=2

 

'// 현 파라메터 일부분 삭제하기

response.write Para(Array(Array("&page",""))) & "<br>"

'// 결과 : chn=blog&mode=syaku

 

'// 현 파라메터 여러부분 수정및 삭제하기

response.write Para(Array(Array("chn","good"),Array("mode","end"),Array("&page",""))) & "<br>"

'// 결과 : chn=good&mode=end

 

'// 이전페이지 파라메터 읽어오기

response.write Para("HTTP_REFERER") & "<br>"

 

%>

 

[출처] 샤쿠

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
3285 세션정보를 DB에 넣고 중복로그인 막고 사이트 통합로그인 13 김영철 01.13 16911
3284 [html] Form - 라디오버튼에서 value값 넘기기 99 단국강토 02.05 14690
3283 제가 사용하고 있는 마케팅프로그램입니다 댓글1 3 천지인 05.23 13188
3282 네이버 관련 바이럴마케팅 프로그램 총집함(카페/블로그/지식인 등) 3 천지인 05.15 13092
3281 관공서/회사접속 차단 해제 댓글8 3 초이스 05.13 12773
3280 엑셀 파일 합치기 매크로 댓글17 2 coruscate 09.14 11104
3279 파일1입니다 url helper 댓글1 2 비비드바비 04.29 10856
3278 파일2입니다 2 비비드바비 04.29 10474
3277 [펌] 제11강 - ADO(Active Database Object) - Database Access Component Cobol vs C#-1 M 최고의하루 12.23 9483
3276 Aqua data studio 한글 깨짐 설정 13 김영철 01.29 9020
3275 history.back() 시 폼데이터 유지하기 13 김영철 01.15 7583
열람중 [ ASP ] url 정보의 파라메터 및 쿼리스트링 자유롭게 조정하는 함수 M 최고의하루 12.19 7466
3273 플래시에서 책장 넘기는 효과 내는 학습 자료 M 최고의하루 12.26 7419
3272 MBTI 테스트지 + 테스트파일 + 결과 댓글35 2 비비드바비 04.29 7231
3271 XML을 해야 하는 이유 13 김영철 01.29 6997
3270 gva.bgdb 인증크랙 댓글4 M 최고의하루 12.18 6792
3269 테이블 넓이 고정 태그:자동 줄 바꿈(break-all, nowrap, fixed) 99 단국강토 02.05 6586
3268 PHP 답변형 게시판 / 자료실 /PHP강좌 13 김영철 01.13 6168
3267 PDF-Pro 4 free 2 춘몽 11.22 6128
3266 award bios 어워드 바이오스 설정법 M 최고의하루 12.18 5897
3265 퍼지는 빛 만들기 | 포 토 샵 [중급] 10 액션쟁이 01.05 5763
3264 ntdll.dll 오류 해결방법 M 최고의하루 01.12 5728
3263 Edit Plus html 내보내기 예제 M 최고의하루 12.20 5727
3262 [ MySQL ] MySQL 5 한글 UTF8 한글 깨짐 분석 (Windows 용) M 최고의하루 12.04 5727
3261 ASP의 EXECUTE, EVAL 사용하기 M 최고의하루 12.23 5683
3260 log 분석 13 김영철 01.14 5636
3259 메일 수신 확인 체크 소스입니다 13 김영철 01.13 5624
3258 화면캡쳐하는 방법, 동영상 이나오는 화면 캡쳐시 안보이는 부분 나오게 하는 방법 M 최고의하루 12.26 5591
3257 The Oracle + PHP Cookbook :: Oracle/PHP 환경의 LOB 처리 13 김영철 01.14 5588
3256 엑셀 자동달력 서식 댓글5 M 최고의하루 12.18 5541
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취