필드에 특수문자 제거해서 저장하기..

필드에 특수문자 제거해서 저장하기..

QA

필드에 특수문자 제거해서 저장하기..

본문

안녕하세요.

글쓰기 폼에 필드를 추가했는데 특수문자를 입력하고 글쓰기를 하면 db에 그대로 저장이 되서

select로 불러올 때 에러가 발생하는데요.

 

작은 따옴표('), 큰 따옴표("), 세미콜론(;) 등 특수문자를 제거하고 DB에 저장되게 하려면 어떻게 해야하나요?

 

p.s


sql_query("UPDATE g5_board_tag SET tags = REPLACE(tags, ' ','')"); 

초보라서 잘 모르겠습니다. 새로운 테이블에도 값을 같이 저장을 하는데요.

위 처럼 공백을 제거하는 쿼리를 쓰는데 위 쿼리 하나로 특수문자를 제거해서 저장할 수 있나요?

이 질문에 댓글 쓰기 :

답변 1

쿼리문에서 특수문자 골라내면서까지하면... mysql은 몇시간마다 뻗어버릴꺼에요...

 

그냥 js정규식으로 아예 입력받을때 특수문자를 입력받지 말거나 php정규식으로 삭제하시거나

 

특수문자를 뷰페이지에 표시해줘야 할때는 php정규식으로 특수문자를 특정문자조합으로 변환 해두셨다가 db에서 뽑아올때 특정문자조합을 특수문자로 바꿔서 출력해주시는게 좋아요.

 

mysql은 쿼리문으로 승부보면 안되요.... 나 좀 하는데? 이러면서 쿼리문으로 승부보다 서비스중에 계속 뻗어요... 중요한건 서비스중에 오류가 생기지 않는거에요!!!

 

끝...

그 쪽지로 말씀 드린 내용에서 콤마(,)로 구분된 태그 개수만큼 insert 하는 이유가 게시판 뷰가 아닌 리스트 상단에서 중복 없이 각 태그를 하나씩 출력하면서 개수도 같이 출력하기 위함인데요...
태그를 하나씩 각각 넣지 않아도 위 처럼 출력이 가능한가요...?

array_unique라고 단어 그대로 배열의 유니크(??? 영어에 약해서.. 근데 유니크가 유일템.... ㅈㅅ ㅜㅜ)

암튼 배열의 중복값을 제거하고 새로 만드는거에요. 모든 배열 불러와서 중복값을 제거해버리면 하나만나오죠 ^^

답변을 작성하시기 전에 로그인 해주세요.
전체 126,000 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT