问题标签 [htmlspecialchars]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - htmlspecialchars 删除格式
我在一个类的另一个函数中调用 htmlspecialchars 函数,但是当我这样做时,即使显示数据,它也会删除在一行中显示数据的所有格式。
这是代码:
如果我删除对 htmlspecialchars 函数的引用,它将按应有的方式显示数据。
更新:
这是我应用的CSS:
$row['cQuotes'] 和 Author 变量中没有 html。它是在实现 htmlspecialchars 时删除的 css 格式。
我注意到的另一件事是,如果我删除ENT_QUOTES
它,它可以工作,但再次使用它,它会删除格式。为什么会这样?
php - 使用 PHP 格式化 HTML 代码以纯文本输出
我有这个函数从数据库中获取一些用户提交的 HTML 代码:
我会这样称呼它echo code($query->row('html'));
。我知道我的问题缺乏“深度”,但这是最好的方法吗?或者是否可以解析输出的格式(例如 Javascript 注入),或者在某些机器上无法正确输出等?
谢谢!
杰克
编辑:我有一个新的(相关)问题:我想使用highlight_string()
. 但是,我无法使其正常工作。我想我明白为什么,但不太确定如何纠正这个问题。
正如你所看到的,我正在使用highlight_string()
它。但是,输出根本没有突出显示,而是作为字符实体(<
、'>' 等)输出。如果我将函数排序改组为:
return "<pre><code>".nl2br(htmlspecialchars(highlight_string($code)))."</code></pre>";
我发现字符实体没有输出,但字符串仍然没有突出显示。澄清一下,我没有 CSS 格式会影响应用的文本颜色。此外,我检查了我的 PHP 设置,其中肯定有指定的突出显示颜色。
php - 如何保护表格?
我正在阅读有关表单安全性的文章,因为我有一个用户可以在其中添加消息的表单。
我读到最好使用strip_tags()
,htmlspecialchars()
和nl2br()
. 据说在其他地方使用html_entity_decode()
.
我的页面中有这段代码,它接受用户输入
但是当我回显该消息时,它都在一行上,并且似乎中断已被删除strip_tags
而不是被放回nl2br()
。
对我来说,为什么这样做是有道理的,因为如果中断已被删除,它如何知道将其放回哪里(或这样做)?
无论如何,我正在寻找一种方法来保护我的表单,以免我被用来尝试破解网站,就像在表单中使用 javascript 一样。
php - htmlspecialchars():参数中的多字节序列无效
我在本地站点中收到此错误。
有谁知道,这是什么问题或应该是什么解决方案?
谢谢。
php - 尝试使用 UTF-8 字符串时 PHP htmlspecialchars() 函数错误
我做了以下事情:
- 我有一个包含数据的电子表格。其中一行中有一个 ü 字符。
- 我将它保存为 OpenOffice.org 中的 CSV 文件。当它要求我输入字符编码时,我选择 UTF-8。
- 我使用 Navicat 创建 MySQL 数据库表,InnoDB 使用 UTF-8 utf8_general 编码并导入 CSV。
- 我尝试使用 PHP 函数
htmlspecialchars($string, ENT_COMPAT, 'UTF-8')
,其中$string
包含特殊 ü 字符的字符串。
它给了我一个错误:Invalid multibyte sequence in argument。当我用 更改'UTF-8'
时'ISO8859-1'
,不会引发错误,但会显示不正确的字符。(“未知字符”字符,看起来像<?>
)
如果我使用 HTML 表单更新数据库中的字符串,错误消失并且字符正确显示,但是,当我在 Navicat 中查看记录时,它看起来是两个字符:
[1/4][A with some thing on top of it]
一些不被视为一个字符的多字节。`
发生了什么事,哪里出了问题,我能做些什么?
php - 如何用 php 替换 - with -
我如何替换-
为–
使用 phphtmlspecialchars()
$content = $_POST['content'];
php - EUC-jp 中的 XSS over htmlspecialchars
日文字符集 euc-jp 制作 xss 吗?
我将获取参数 a 作为 %f0 然后:
我有那种不好的感觉
我很高兴你给我一些例子
php - 如何阻止 HTMLpurifier 在 Markdown 中转义 PHP 速记语法示例?
我正在使用 markdown 和 HTMLpurifier,我想<?= $variable ?>
在 markdown 代码(使用缩进语法)中有简写 PHP () 的示例,但是 HTMLpurifier 没有将标记识别<
为允许的元素并且正在转义它。
知道我需要在 HTMLpurifier 中启用什么配置选项来阻止它转义吗?
php - php XML DOM 将特殊字符转换为 &#xYY;
我用 AJAX POST 发送这个:
我这样做是为了创建 XML:
我明白了:
¿Dónde habré olvidado...我的记忆?
翻译为:
我需要 XML 中的原始字符,这些是 utf-8 有效的,我不知道这种编码的原因:(