2011-03-22 4 views
0

내가 그렇게 나에게 내가 가진 완전한 코드를 적어주세요 제가 PHP를 & 자바 스크립트에 대한 지식의 매우 작은 양이 <script>want to remove</script> 사이에 모든 것을 나 콘텐츠를 제거 할 사이의 모든 내용을 삭제 웹 사이트에서이 상자를 발견하고 복사하여 모든 태그를 제거하지만이 태그를 제거하고 싶지는 않습니다. 태그 사이의 내용 만 제거하고 싶습니다. 사이에서 콘텐츠를 제거 하시려면 버튼이나 스크립트를 하나 수정하십시오. 다른 스크립트를 보내주십시오.<스크립트 유형 = "자바 스크립트"> ABCD</script> 태그

<script type="text/javascript"> 

// Strip HTML Tags (form) script- By JavaScriptKit.com (http://www.javascriptkit.com) 
// For this and over 400+ free scripts, visit JavaScript Kit- http://www.javascriptkit.com/ 
// This notice must stay intact for use 

function stripHTML(){ 
var re= /<\S[^><]*>/g 
for (i=0; i<arguments.length; i++) 
arguments[i].value=arguments[i].value.replace(re, "") 
} 

</script> 

<form> 

<textarea name="data1" style="width: 400px; height: 100px"></textarea><br /> 
<input type="button" value="Remove any HTML tags" onClick="stripHTML(this.form.data1)"> 
</form> 
+0

그래서 내가 제대로 이해하고 수행하는 것이이 텍스트 영역 '데이터 1'은, 예를 들어이 포함 된 경우 : 여기

PHP에서 예입니다 'Hello this is not world!'버튼을 클릭 한 후'Hello world! '를 포함해야합니까? –

답변

1

당신은 시도 할 수 : document.getElementsByTagName ('스크립트') [0] .innerHTML = '';

+0

cliet 측은 어두운면입니다! – Stephan

+0

클라이언트 측의 권한을 절대로 과소 평가하지 마십시오. 때때로 보안은 문제가되지 않으며 때로는 클라이언트 쪽에서 모든 것을 처리해야 할 때도 있습니다. 예를 들어, 코드가 실행 된 후 제거 또는 변경합니다. 일반적으로 나는 원칙적으로 당신과 동의 할 것이지만, 기초를 알 필요가있는 코드를 제공하고, 최적화되고, 난독 화되고 압축됩니다. –

+0

Phonegap 모바일 앱의 경우와 마찬가지로 클라이언트 측은 때때로 _ 유일한 쪽입니다. 이러한 응용 프로그램에서 JQuery를 사용하여 다운로드 한 내용의 스크립트를 살균하는 것은'var cleanHtml = $ (dirtyHtml) .html()'입니다. – chrysanhy

1

게시 한 코드 블록에 따르면 양식 요소 (예 : 텍스트 영역)의 값에서 스크립트 태그를 제거하려는 것으로 보입니다. 이런 종류의 보안 수단을 쉽게 우회 할 수 있기 때문에 클라이언트 측에서 사용자 입력을 살균하는 것은 일반적으로 나쁜 생각으로 간주됩니다. 더 나은 해결책은 게시 된 데이터에서 스크립트 태그를 서버 측에서 제거하는 것입니다.

$data = $_POST['fieldname']; 

$outputData = strip_tags($data, array(/* here you can specify the allowed html tags, all others will be stripped */); 

echo $output; 
관련 문제