정보보안 및 해킹/웹 개발(4)
-
[PHP] GET방식으로 parameter 전달 시 space(공백) 포함하기
필자는 게시판을 만들다가 DB중 title을 기준으로 해서 쿼리문을 구성하고 있었는데,title 중에 공백(스페이스바)가 포함된 문자열이 제법 많았다.그런데 GET방식으로 parameter를 전달하다가 공백 앞에서 문자열이 끊겨 공백 앞 문자열까지만 전달이 되었다.그래서 해결 방안을 모색했고, 해당 해결 방안은공백을 인코딩하여 parameter를 전송하는 것이었다.공백은 %20으로 인코딩이 된다 php에서는 해당 과정을 아주 쉽게 사용할 수 있도록 구현해 놓은 것이 있었는데, 그것이 바로urlencode() 함수였다.적용 전 코드와 적용 후 코드의 차이를 살펴보자. 적용 전 코드$writer = $sql_row['writer']; $writed_date =$sql_row['writed_date'];..
2024.05.11 -
[DB] DB에 이미지를 저장하는 여러가지 방법
데이터베이스에 이미지를 저장하는 방법에는 여러가지 방법이 있는데, 본 포스팅에는 총 4가지 방법을 소개하고 싶다. 이미지 자체를 BLOB로 저장이미지 데이터를 LONGBLOB데이터로 변환하여 DB에 저장한다BLOB(Binary Large Object)라고 하여, 최대 2,147,483,647길이의 가변길이 이진 문자열이라고 한다.이미지를 Base64로 저장이미지를 Base64로 인코딩하여 저장한 후 읽어올 때에도 디코딩하여 읽어오는 방법이 있다.Base64는 64진법으로 0부터 63까지 사용하면서도 최대한 데이터 손상을 최소화할 수 있어서 많이 사용되고 있는 것으로 보인다.보통 Mobile Application에서 띄울 때 많이 사용하는 방식인 것으로 보인다.이미지 전체 경로를 저장이미지를 불러오는 전체..
2024.05.06 -
[System] Default Login System
식별많은 데이터 중 특정 데이터를 찾아내는 것unique, 즉 같은 컬럼의 다른 데이터와 중복되지 않는 유일한 값이어야 한다.보통 PRIMARY KEY로 등록하여 사용ex) ID인증로그인을 시도하는 사람이 정말로 그 유저인지 확인하는 작업ex) password, OTP 식별값 : userid인증값 : userpassword Hash일방향 함수. 한 쪽으로 값을 변경할 수 있지만 되돌릴 수 없다. 식별과 인증을 동시에userid와 password를 하나의 쿼리문에서 검사, userpassword는 평문으로 비교select * from member where id='$user_id' and pass='$user_pass'식별과 인증을 따로userid를 먼저 검사한 후 통과하면 userpassword 검사 ,..
2024.05.03 -
[CSS] 요소 수평 / 수직 정렬하기
inline / inline block / block/ multiple block / Flexbox에 따라 각자 다르게 css를 세팅해줘야 한다. inline ex) ... 줄글을 계속된 한 줄로 취급함 margin, padding은 좌우 간격만 반영이 됨 block ex) ... 줄글을 하나의 블럭으로 처리함 위아래로 조절을 하면 서로 겹침 margin, padding 상하좌우 모두 반영이 됨 inline block ex) ... inline과 block을 합쳐놓은 것으로 생각하면 됨 줄글을 계속된 한 줄로 취급함 margin, padding 상하좌우 모두 반영이 됨 Flexbox 하나의 큰 통이 생기게 됨 그 통 안에 여러 요소를 같은 간격으로 집어넣을 때 사용 수평 정렬 inline & inline..
2024.04.23