Codeigniter 프레임 워크에서 개발 된 웹 사이트의 경우 ACE Editor을 사용하고 있습니다. 문제는 양식을 제출 한 후 일부 태그 속성이 제거 된 것입니다.스타일 속성 및 공백에서 PHP로 html 코드 게시가 실패합니다.
HTML :
<form enctype="multipart/form-data" method="post" action="<?php echo site_url('admin/slider/populateFile')?>">
<div id="e1" style="display: none;">
<?php if(isset($sliderHTML)) { echo $sliderHTML; } ?>
</div>
<textarea class=" form-control" id="editorTextarea" name="sliderHTML" type="text" rows='20' wrap="off">
<?php if(isset($sliderHTML)) { echo $sliderHTML; } ?>
</textarea>
<pre id="editor"></pre>
</form>
PHP :
<img class="ls-l" style="top:195px;left:50%;white-space:nowrap;" data-ls="offsetxin:0;delayin:1720;easingin:easeInOutQuart;scalexin:0.7;scaleyin:0.7;offsetxout:-800;durationout:1000;" src="http://localhost:8080/afa/application/views/images/upload/slider/4978d-s1.jpg" alt="">
<p class="ls-l" style="top:150px;left:116px;font-weight: 300;height:40px;padding-right:10px;padding-left:10px;font-size:30px;line-height:37px;color:#ffffff;background:#82d10c;border-radius:3px;white-space:nowrap;" data-ls="offsetxin:0;durationin:2000;delayin:1500;easingin:easeOutElastic;rotatexin:-90;transformoriginin:50% top 0;offsetxout:-200;durationout:1000;">
FEATURES
</p>
그러나, 출력이 내가 코드 편집기에서 작성하는 노력하고있어 예입니다
function populateFile()
{
$sliderHTML = $this->input->post('sliderHTML');
//echo $sliderHTML;
$filePath = 'application/views/admin/slider/sliderHTML.txt';
write_file($filePath, $sliderHTML, 'w');
redirect('admin/slider', 'location');
}
같이됩니다 :
<img class="ls-l" data-ls="offsetxin:0;delayin:1720;easingin:easeInOutQuart;scalexin:0.7;scaleyin:0.7;offsetxout:-800;durationout:1000;" src="http://localhost:8080/afa/application/views/images/upload/slider/4978d-s1.jpg" alt="">
<p class="ls-l" 300;height:40px;padding-right:10px;padding-left:10px;font-size:30px;line-height:37px;color:#ffffff;background:#82d10c;border-radius:3px;white-space:nowrap;" data-ls="offsetxin:0;durationin:2000;delayin:1500;easingin:easeOutElastic;rotatexin:-90;transformoriginin:50% top 0;offsetxout:-200;durationout:1000;">
FEATURES
</p>
img
의 스타일 속성이 제거되었으며 <p>
에 대해서도 발생하지만 font-weight:
이후에는 멈 춥니 다. 나는 이유를 모른다.
어떤 아이디어?
편집 : 마지막으로 나는 이것이 코드 편집기와 아무 관련이 없다는 것을 알고있었습니다. 문제는 Codeigniter의 xss_filtering 및 this answer works for me입니다. :)
의 장소에
"</textarea><script>alert('all your passwords belong to us')</script>"
을 넣어시도는 나에게 보인다. 그것은 당신의 코드를 파싱하려고 시도하는 것 같지만 실패합니다. 어쩌면 그것은 임베디드 CSS를 허용하지 않으며 그것을 없애려고 노력하고 있지만, 실패하고 있습니다. 어쩌면 CSS를 스타일 시트로 옮기려고하는 것일 수도 있습니다. 나는 그냥 수락에 속이는 여분의 공간을 추가하려고합니다. 또한 요소에 ID를 부여하고 CSS를 스타일 시트에 넣을 수 있습니다. – Qaz
글쎄, 난 편집기없이 텍스트 영역을 사용하려고하고 ckeditor (내가 소스에서 썼다)를 사용했지만, 이것은 나에게 같은 결과를 주었다. – Yasmeen
그리고이 인라인 스타일의 경우 인라인해야합니다. 이렇게 사용해야하는 다른 곳에서 사용하기 때문입니다. : \ – Yasmeen