addslashes() 함수의 역활

방명록이나 게시판에 글쓰기할때 사용자들이 특정문자를 입력하면
데이타베이스에 업할때 오류가 발생할수 있습니다.
따라서 이 함수는 따움표나 \(역슬래쉬) 같은 문자들을 포함하고
있는 것에 문자열에서 핻장문자의 앞에 역슬래쉬 문자를 집어넣어서
반환해주는 함수입니다.

예를 들어,
$a 라는 php 변수에 방명록에 타이핑된 내용이 기억되었다고 가정할때
프로그램에서 다음과 같은 명령을 썼다고 가정해보겠습니다.
query문으로

insert into dbtable (bang) values ('$a');

그런데 $a에 입력한 사람이

'설악산'이 좋아요.

라고 타이핑했다면

php에서 파싱한 후에는 다음과 같은 query문이 되겠죠.

insert into dbtable (bang) values (''설악산'이 좋아요.');

이와 같이 되면 정확한 내용이 dbtable에 저장될수가 없습니다.
에러가 떨어지겠죠. 문법이 안 맞아들어갈테니,,

따라서 $a = addslashes($a) 해준다음에 query를 준다면 다음과 같은
의미로 변하고 정상적으로 받아드려집니다.

insert into dbtable (bang) values ('\'설악산\'이 좋아요.');

이와같이 특수문자로 부터 발생될 수 있는 에러를 피하기위해
특수문자 앞에 역스래쉬를 붙여주는 역활을하는 함수입니다.

나중에 DB에서 읽어와서 웹브라우저에 뿌려줄때는 원래대로 대돌려서
출력해야하니까 백슬래쉬를 제거해주는
함수를 사용해야하는데 stripslashes() 함수를 씁니다.


좋은하루되세요

+ Recent posts