CMS/프레임워크 | XE 1.x |
---|---|
개발 언어 | PHP 5.x |
문제 페이지 주소 | 비공개 (작성 후 5일 경과) |
현재 xe 1.11.6으로 업데이트 하여 발생하는 문제들을 해결하고 있습니다.
스케치북을 사용한 계시판 상단에 코드가 그대로 노출되고 있어요 -ㅜㅜ
이전에는(1.8.4버전)
써넣은 코드의 이미지가 노출되었습니다. ~~
스케치북의 요 기능을 사용하고 있습니다.
스케치북의 이 기능은 textarea 확장변수에 rd_preview를 만들고
이후 불러오는 기능 입니다.
체크] 스케치북 게시판의
제목 블로그 스타일이 나온 _read.html 열어
찾아 보면 관련코드는
{$oDocument->getExtraEidValue('rd_preview')} 요부분을
{strip_tags($oDocument->getExtraEidValue('rd_preview'))}
으로 변경하였는데
html 테그가 그대로 보입니다.
서버환경 확인했는데
PHP5.5, MySQL5.x 인데
strip_tags가 안 먹혀요~~ ㅜㅜ
댓글 6
그러니 strip_tags로 걸러지지 않는 것일지도요.
{html_entity_decode($oDocument->getExtraEidValue('rd_preview'))}
로 하면 왠지 태그가 적용돼서 페이지에 로드가 될 것 같고,
{strip_tags(html_entity_decode($oDocument->getExtraEidValue('rd_preview')))}
로 하면 태그 제거한 문자열만 나올 것도 같고 그렇습니다.
저도 잘 모르는 데다 직접 시연을 해본 것은 아니어서 정확한 답은 아닐 수 있을 거예요.
https://github.com/rhymix/rhymix/blob/0f33fa653944bb5a68d1dc6b6f123539b63206cd/common/functions.php#L185
{htmlspecialchars_decode($oDocument->getExtraEidValue('rd_preview'))}
또는
{strip_tags(htmlspecialchars_decode($oDocument->getExtraEidValue('rd_preview')))}
으로 해보시면 어떨까 합니다.
로 하니 제대로 되었습니다.
굉장히 고생했는데 이 곳에서 해결책을 찾았네요
정말 감사합니다. 윤삼님~~ 꾸벅
{htmlspecialchars_decode($oDocument->getExtraEidValue('rd_preview'))} 도 잘 적용이 되고
{strip_tags(htmlspecialchars_decode($oDocument->getExtraEidValue('rd_preview')))}
는 액박으로 창오류만 뜨네요
strip_tags는 안 먹히는 것 같아요
html_entity_decode 보다는 htmlspecialchars_decode 함수가 더 적절해보입니다. :)
한 수 배우게 되었습니다.