0

我有一个数据库变量,其中包含

5/8\" Cabinet Grade Plywood

WP 或 SQL 添加的 \ 以转义 ".

检索此变量时,我在用于编辑该表的字段的值中使用 stripslashes()(以便下次有人想要编辑该字段时,他/她将看到该输入中的内容)和实际网站它应该出现的地方。

奇怪的是..

在现场,它从 5/8\" 橱柜级胶合板切割到仅 5/8

在它应该出现的网站上,它正常显示,没有斜线或任何不寻常的东西。

这就是我剥离该字段的方式:

$somevar = '<input value="'.stripslashes($currentselected['something']).'" class="niceclass" name="something" type="text" />';

这就是我在页面上出现时使用它的方式:

 <td><span style="font-size: larger;"><?php echo stripslashes($goods['verygood']); ?></span></td>
4

2 回答 2

1

它只是与 HTML 标记冲突

<input value="'.stripslashes($currentselected['something']).'"/>

将导致

<input value="5/8" Cabinet Grade Plywood" />

看看那些“,它就在那里坏了,你需要逃离那些”

解决这个问题在 php 中使用 urlencode 函数

<input value="'.urlencode(stripslashes($currentselected['something'])).'"/>

或 htmlspecialchars 函数,它应该用

&quot;
于 2012-08-16T02:23:55.080 回答
0

您可以htmlspecialchars在输出中使用一些。在"HTML 中具有特殊含义,在这种情况下实际上将被视为.value属性的关闭input。因此,您应该逃避它(htmlspecialchars将转换"&quot;)。

于 2012-08-16T02:27:40.657 回答