자유게시판

제목 네이버 스마트에디터 + 코드이그나이터 입력 클래스 사용시 문제 발생.
글쓴이 수야디벨 작성시각 2013/12/11 00:13:52
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 13462   RSS

안녕하세요 ^^

오늘은 팁인지 .. 아니면 제가 잘 몰라서 한 실수인지,

구분이 안가는 버그(?)에 대해서 공유 하려고 합니다 ^^?


다들 위지윅 에디터를 어떤거 사용하실지는 모르겠지만 ,

저는 여태 , 네이버 스마트 에디터 (공개용이지만 왠지 베타 테스터 같은 느낌을 받는 다는건 안비밀) 를

사용하거든요 .

예전에 웅파님도 그랬지만 위지윅 에디터는 사용 목적에 맞게 적용하는게 좋다고 하는데,

전 아직 네이버 스마트 에디터 밖에 써본적이 없네요 .... OTL..

뭐 하여튼 ,

이번에도 네이버 스마트 에디터로 신나게 작업하고 있는데,

예전에는 없었던 일이 발생하더라구요 .


스마트 에디터로 작성한 본문 내용이 일부 삭제되서 db에 들어간다거나 ,

스마트 에디터로 정렬(왼쪽 정렬, 가운데 정렬,오른쪽 정렬) 해서 쓴 값들이

나중에 DB에 들어간 내용을 살펴보면 <div align "center"> 식으로 들어간다거나 ..

(원래는 <div align="center"> 이 맞는데 ' = ' 이게 빠져서 들어가더군요;;)

갑자기 스마트에디터가 아니라;; 바보 에디터가 된거에요 ;;

처음에는 스마트 에디터의 자체 결함이라고 생각했는데,

해결하고 나서보니 입력 클래스를 거치고 나서의 문제인거 같더군요 ..

$this->input->post('text',TRUE); 해서 받으니까 , 위와 같은 오류가 발생 .

그래서 $_POST['text']로 받으니까, 위와 같은 오류가 생기지 않더라구요 .


아무래도 에디터의 본문 내용을 xss 필터링을 거치면서 ,

뭔가 깨지는 현상이 발생한거 같은데 .. 이게 분명히 예전에는 안그랬는데 ,

이번에 그러니 좀 황당 ...

예전에 양승현님이 2.1.4 버전이라서 어떤 오류가 발생한거 같다고 적으신 글을 본적이 있는데

저도 이 오류가 난 버전이 2.1.4 거든요 ..

예전에는 2.1.0 버전이였고.

정말 2.1.4가 이상한걸까요? 아니면 저의 착각일까요?



혹시 스마트 에디터 사용하시면서 저 같은 문제로 고생하시는 분들은 ,

제 글이 도움이 되시길 바랍니다 ^^
 다음글 가입인사드립니다ㅋㅋ (2)
 이전글 안녕하세요 (3)

댓글

한대승(불의회상) / 2013/12/11 10:27:08 / 추천 0
$_POST['text'] 대신 $this->input->post('text') 를 사용하세요.

kaido / 2013/12/11 11:35:11 / 추천 0
 $this->input->post('text',true);

사용시 xss 필터 문제 해결 방법은 크게 2가지 있습니다.

1. CI의 xss 필터를 뜯어 고침.
2. 별도의 필터를 사용함.

개인적으로 htmlpurifier 를 사용했습니다.

XSS 필터 라이브러리 입니다.

찾아보시면 기능별로 원하는 것만 필터 가능 하게 설정 해서 헬퍼로 빼서 사용 가능 합니다.



한대승(불의회상) / 2013/12/11 14:52:46 / 추천 0
kaido// 좋은 정보 감사 합니다. ^^
수야디벨 / 2013/12/11 23:42:04 / 추천 0


한대승// KAIDO //

아 .. $_POST 말고 그냥 두번째 옵션값을 주지 않으면 되는거엿군요^^;

카이도님이 말씀하신거처럼 별도의 xss 필터링을 거치는것도 방법이겠네요.

관심 감사합니다 ~ ㅎ

CI 묻고 답하기로 가야겠네요 이 글은 ㅎㅎ