[英]PHP/jQuery to submit/save input with all special characters value
Example.. 例..
HTML : HTML:
<input type="hidden" value="">
PHP : PHP的:
<input type="hidden" value="<?php echo $value;?>">
jQuery : jQuery的:
$("input:hidden").val(text);
If text
(JS variable) is free text, All html special characters allowed (like single quote / double quote) and save to input:hidden
(so submit by PHP) 如果text
(JS变量)是自由文本,则允许所有html特殊字符(例如单引号/双引号)并保存到input:hidden
(因此由PHP提交)
What is a correctly way to do ? 正确的做法是什么?
May I use 我可以用
echo htmlentities($value);
... in PHP ...在PHP中
or replace quotes in jQuery like .val(text.replace(/'/g,"'"))
或替换jQuery中的引号,如.val(text.replace(/'/g,"'"))
or what ? 要不然是啥 ?
PS : Please think about when I set value to input to save value with jQuery too. PS:请考虑一下当我设置值以使用jQuery保存值时。
Converting to htmlentities should work fine. 转换为htmlentities应该可以正常工作。
You can also use strip_tags if you want to remove all HTML tags : 如果要删除所有HTML标签,也可以使用strip_tags :
Note: this will NOT stop all XSS attacks 注意:这不会阻止所有XSS攻击
If you want to echo a PHP variable into some HTML, use: 如果要将PHP变量回显到某些HTML中,请使用:
<input type="hidden" value="<?php echo htmlspecialchars($value); ?>">
http://php.net/manual/en/function.htmlspecialchars.php http://php.net/manual/en/function.htmlspecialchars.php
If you want to echo a PHP variable into some JavaScript, use: 如果要将PHP变量回显到某些JavaScript中,请使用:
<?php echo json_encode($value); ?>
http://php.net/manual/en/function.json-encode.php http://php.net/manual/en/function.json-encode.php
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.