묻고답하기
Apache 2.2 + php5 + mssql 2008 +xe 설치시 문제
2012.02.08 14:44
안녕하세요
Apache 2.2 + php5 + mssql 2008(mssql 2008 native client 설치 완료) + xe를 설치하고
셋업하는 부분까지 완료가 되었습니다.
정상적으로 테이블 생성되며 로그인 페이지 뜨고 로그인 잘 됩니다.
그런데 문제가 되는 부분이 있습니다
xe페이지에 이상한 문자열이 출력되는 증상입니다.
특정페이지는 css가 적용되지 않는 화면으로 나오구요
PHP+MSSQL 연동 모듈은 MS 사이트에서 2.0버전으로 적용하였습니다.
어떻게 해결 방법이 없을까요?
XE쪽 문제인지 MS에서 배포하는 DLL의 문제인지 확실히 판단히 서질 않습니다.
그리고 MSSQL 말고 sqllite3로 DB설정한 후 작업시에는 문제없이 잘 동작합니다.
MSSQL로 DB를 설정하면 이런 문제가 생깁니다.
아래부분은 스크린샷입니다.
로그인하기전 이상하게 찍힌 문자열
회원 관리 부분에 CSS가 적용되지 않는 현상
게시판에 게시물 작성시 텍스트의 일부를 선택하고 여러번 붙여 넣기 할때 작성글 하단에 이상한 문자열 출력
댓글 2
-
snows96
2012.02.08 15:42
-
하이하이
2012.02.08 16:37
MSSQL상에 UTF-8로 설정하는 부분이 없는것으로 알고 있는데요.. 검색해도 관련 정보가 보이질 않네요 ㅜㅜ -
하이하이
2012.02.08 16:37
php.ini 쪽에 mssql관련 섹션에는 mssql.charset = "utf-8" 로 지정이 되어 있는 상태입니다. -
하이하이
2012.02.08 17:05
그리고 인코딩의 문제라면 입력한 텍스트가 모두 깨져보여야 하지 않을까요? 의견부탁드려요 -
snows96
2012.02.08 18:10
음.. MSSQL에 인코딩설정하는부분도 없고, 간혹 IE버그로 프레임없는 단일문서에서도 어떤건 잘 보이고 어떤건 깨지는 그런버그가 있는 경우가 있지만 현재에는 SQLlite에서는 정상작동하니... 감이 안잡히는군요... -
정승재
2013.07.25 22:56
저도 이 문제때문에 여러가지 알아봤는데요.
xe_documents 테이블에 text 타입을 nvarchar(MAX)로 변경하시면 해결 됩니다.
같은 방법으로 xe_comments나 text를 쓰는 곳은 다 바꿔주시면 됩니다.
현재, 정상작동하는 경우와 비정상작동하는 경우의 차이는 단지 D/B차이밖에 없는데요..
그럼 D/B에 문제가 있을 가능성이 큽니다.
인코딩이 깨지는걸로 봐선 인코딩쪽 문제가 확실히 큰 것 같습니다. 우선 MS-SQL에서 D/B의 charaset이 제대로 되어있는지 확인해보세요. XE의 경우 UTF-8로 셋팅되어있어야 합니다.