0
我该如何防止仅向数据库提交脚本,但是应该允许使用我正在使用的以下脚本允许所有HTML标记。请帮忙。如何防止从textarea输入提交脚本
<form name="exthtmlForm" style="height: 100%;">
<fieldset>
<legend>Source Editor</legend>
<div id="editor" name="editor" style="height: 100%;">
<textarea id="iExthtml" style="max-width: 100%; width: 100%; height: 50px; box-sizing: border-box;">
<?php if($exthtml_content!=""){ echo htmlentities($exthtml_content, ENT_QUOTES, 'UTF-8'); } ?>
</textarea>
</div>
</fieldset>
</form>
$(document).on('click','#abtSubmit',function(){
var data = $('#iExthtml').val().replace(/'/g, "\\'");
dataString=$('form[name=exthtmlForm]').serialize();
$.ajax({
type: 'POST',
url: "<?php echo $GLOBALS['base_url'];?>ajax/cpanel/cpanel-ajax.php?mode=UpdateExthtml",
cache: false,
data: { content : data , dpid : <?php echo $dpid; ?> , menuID : <?php echo $MPage; ?> },
dataType: "json",
success: function(data){
if(data.success == "yes"){
if($("#states").length!==1){
$(".error_2525").remove();
$('#abtSubmit').before("<div class='error_2525' id='success_message' style='margin-top: 10px;'>Content updated successfully</div>");
$('#success_message').delay(5000).fadeOut(300, function(){
$('#success_message').remove();
});
}
}
}
});
});
您好,欢迎光临。你的代码需要在脚本标签剥离时进行编辑。 我强烈建议不要用'JavaScript'(客户端)来做这件事,而用'PHP'来做服务器端。 – Mouser
此外,我不能使这个代码的头或故事。 – Mouser
任何客户端验证纯粹是为了方便用户,并且绝不应该用它来消毒用户输入。您需要删除服务器上的恶意输入。 – WillardSolutions