Request("key") 를 사용하지 말자!!! > 기술자료

본문 바로가기

사이트 내 전체검색

Request("key") 를 사용하지 말자!!! > 기술자료

ClassicASP Request("key") 를 사용하지 말자!!!

페이지 정보


본문

<%
 '〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
 '〓〓〓 Request 값을 구하는 함수  〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
 
 '〓 GET 과 POST 두가지 방법 모두로 값이 넘어올 때에는      
 '〓 Request.QueryString 과 Request.Form 두가지를 모두 사용해야 합니다
 '〓 이럴때 보통 Request(아이템명) 이런 방법을 사용합니다.     
 '〓 하지만 이렇게 사용하면 Request.ServerVariables 를 먼저 찾게 되어
 '〓 성능이 떨어지게 됩니다. 그래서 일단 GET 를 먼저 그 다음 POST 를
 '〓 찾아서 값을 가져오도록 합니다.
 '〓 하지만 POST 를 먼저 받아야 할때도 있어 Method 를 선택할 수 있도록
 '〓 파라미터로 받아서 처리하고 있습니다.
 '〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
 
 Function fnRequestValue(strRequestItem, method)
 
  Dim strRequestValue, strQueryString, strForm
  
  strQueryString = Trim(Request.QueryString (strRequestItem))
  strForm = Trim(Request.Form (strRequestItem))
  
  If method = "POST" Then
   If Len(strForm) > 0 Then '''= POST 로 넘어오는 값이 있으면
    strRequestValue = strForm
   ElseIf Len(strQueryString) > 0 Then  '''= GET 로 넘어오는 값이 있으면
    strRequestValue = strQueryString
   Else
    strRequestValue = ""
   End If
  Else
   If Len(strQueryString) > 0 Then '''= GET 로 넘어오는 값이 있으면
    strRequestValue = strQueryString
   ElseIf Len(strForm) > 0 Then  '''= POST 로 넘어오는 값이 있으면
    strRequestValue = strForm
   Else
    strRequestValue = ""
   End If
  End If
  
  fnRequestValue = strRequestValue
 
 End Function
%>


사용법은
UserNick = Left(fnRequestValue("nick", "POST"), 20)
이렇게 하면 POST 값을 먼저 검색하고, GET 를 쓰면 GET 를 먼저 검색합니다.
그리고 Left 를 이용해서 잘라서 쓰도록 하는 이유는
악의적인 사용자가 파라미터에 DB 에 영향을 줄 수 있는 문자열을 추가했을 경우 심각한 상황이 발생할 수도 있기 때문에 미리 정의된 파라미터의 최대 길이만큼 잘라서 쓰는 습관을 들여야 하겠습니다.

받아오는 파라미터는 모두 ...+_+



자료인용
http://cafe.naver.com/staeho.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=52 

댓글목록

등록된 댓글이 없습니다.


Total 2,648건 109 페이지
  • RSS
기술자료 목록
488
MSSQL   25718  2008-05-22 05:48 ~ 2016-05-28 00:00  
열람
ClassicASP   10601  2008-05-20 19:10  
486
Linux   9999  2008-05-20 08:10 ~ 2021-09-09 09:29  
485
메이크샵   15084  2008-05-03 11:28  
484
JavaScript   14429  2008-05-15 21:00  
483
도메인   13410  2008-05-15 14:14  
482
영카트   12192  2008-05-14 11:57  
481
그누보드   11927  2008-05-10 15:38  
480
ClassicASP   26719  2008-05-04 09:58  
479
HTML   21421  2008-05-04 09:39  
478
JavaScript   13740  2008-05-01 05:47  
477
MySQL   16545  2008-05-01 05:08  
476
그누보드   20962  2008-04-28 11:24  
475
그누보드   11828  2008-04-28 11:19  
474
PHP   16332  2008-04-26 16:50 ~ 2021-07-06 21:53  
473
PHP   22953  2008-04-26 15:59 ~ 2013-01-14 00:00  
472
ClassicASP   13232  2008-04-26 15:38  
471
PHP   15810  2008-04-26 15:05 ~ 2009-09-16 00:00  
470
ClassicASP   12636  2008-04-24 11:47 ~ 2012-03-24 00:00  
469
ClassicASP   15360  2008-04-23 22:02 ~ 2015-02-03 00:00  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2026 해피정닷컴. All Rights Reserved.