繁体   English   中英

PHP / jQuery提交/保存具有所有特殊字符值的输入

[英]PHP/jQuery to submit/save input with all special characters value

例..

HTML:

<input type="hidden" value="">

PHP的:

<input type="hidden" value="<?php echo $value;?>">

jQuery的:

$("input:hidden").val(text);

如果text (JS变量)是自由文本,则允许所有html特殊字符(例如单引号/双引号)并保存到input:hidden (因此由PHP提交)

正确的做法是什么?

我可以用

echo htmlentities($value); ...在PHP中

或替换jQuery中的引号,如.val(text.replace(/'/g,"'"))

要不然是啥 ?

PS:请考虑一下当我设置值以使用jQuery保存值时。

转换为htmlentities应该可以正常工作。

如果要删除所有HTML标签,也可以使用strip_tags

注意:这不会阻止所有XSS攻击

如果要将PHP变量回显到某些HTML中,请使用:

<input type="hidden" value="<?php echo htmlspecialchars($value); ?>">

http://php.net/manual/en/function.htmlspecialchars.php

如果要将PHP变量回显到某些JavaScript中,请使用:

<?php echo json_encode($value); ?>

http://php.net/manual/en/function.json-encode.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM