- 정보공유
[그누보드팁] SQL 인젝션 막기를 위한 php 코드 수정.
SQL 인젝션 막기를 위한 php 코드 수정.
$query = " select * from {$g5['member_table']} where mb_no = '".$mb_no."' ";
$db = sql_fetch($query);
를 아래와 같이 수정.
$query = " select * from {$g5['member_table']} where mb_no = ? ";
$stmt = $connect_db->prepare($query);
$stmt->bind_param('i', $mb_no); // i = int, s = string , b = blob, 패킷 , d = double, float
$stmt->execute();
$result = $stmt->get_result();
$db = $result->fetch_assoc();
또는 간단하게 아래와 같이 처리할수있다.
$query = sprintf("delete from {$g5['member_table']} where mb_no = %d", $mb_no);
sql_query($query);
%% - 백분율 기호를 반환합니다.
% b - 이진수
% c - ASCII 값에 따른 문자
% d - 부호있는 10 진수 (음수, 0 또는 양수)
% e - 소문자 (예 : 1.2e + 2)를 사용하는 과학 표기법
% E - 대문자 (예 : 1.2E + 2)를 사용하는 과학 표기법
% u - 부호없는 10 진수 (0보다 크거나 같음)
% f - 부동 소수점 수 (로컬 설정 인식)
% F - 부동 소수점 수 (로컬 설정 인식 없음)
% g - % e와 % f 중 짧은 것
% G - % E 및 % f 중 더 짧음
% o - 8 진수
% s - 문자열
% x - 16 진수 (소문자)
% X - 16 진수 (대문자)