ssouf
addslashes,stripslashes 본문
addslashes 는 "aaa" 값이 넘어오면 DB에 들어갈때 \"aa\" 으로 변환
,stripslashes 는 반대이다
,stripslashes 는 반대이다
db insert,update 시 addshases는 기본보안 항목일겁니다.
다만, post해서 넘어온 변수를 일일이 addslashes해주는 건 귀찮은 일입니다.
반대로 select로 불러온 뒤 stripslashes하는 것도 상당히 귀찮은 일입니다.
이를 간판하게 하는 방법이 있습니다.
여기에 쉽게 사용방법이 array_map() 함수입니다.
post경우
$_POST=array_map('addslashes', $_POST);
select경우
$re=mysql_query("select.......
while($data=mysql_fetch_array($re)){
$data=array_map('stripslashes', $data);
}
부가적으로
$_POST=array_map('addslashes', $_POST);
이를 한방에 해결하는 것이 아래입니다.
magic_quotes_gpc()=on
이는 phpinfo(); 를 통해 알수있겠습니다.
이는 php.ini 설정값으로, on 으로 하면 되겠습니다. 다만, 보안상 권하지는 않습니다.
해서 이 값은 .htaccess를 통해 변경이 가능한데, off 로 바꿔주고,
$_POST=array_map('addslashes', $_POST);
으로 해주는 것이 좋습니다.
ex)
if(!get_magic_quotes_gpc()){
$_GET=array_map('addslashes', $_GET);
$_POST=array_map('addslashes', $_POST);
$_COOKIE=array_map('addslashes', $_COOKIE);
}
//`register_globals = off 에 따른 gps 배열변수 extract`
extract($_GET);
extract($_POST);
extract($_SERVER);
$_GET=array_map('addslashes', $_GET);
$_POST=array_map('addslashes', $_POST);
$_COOKIE=array_map('addslashes', $_COOKIE);
}
//`register_globals = off 에 따른 gps 배열변수 extract`
extract($_GET);
extract($_POST);
extract($_SERVER);
[출처] addslashes,stripslashes 를 편하게하기 |작성자 퇴깽이
'Web DEV > PHP' 카테고리의 다른 글
에디트 플러스 에서 파일마다 폴더 일치 시키기 (0) | 2016.06.03 |
---|---|
display_errors,Date 오류,error_report (0) | 2012.06.20 |
업로드 (0) | 2010.09.07 |
자동글쓰기 방지 (0) | 2010.03.09 |