加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

如何使用PHP从输入框中删除引号

发布时间:2020-12-13 17:02:39 所属栏目:PHP教程 来源:网络整理
导读:我有这个: input name="title" type="text" class="inputMedium" value="' . $inputData['title'] . '" / 我想从用户输入中删除引号,以便如果有人输入如下内容: “这是我的头衔”它不会搞砸我的代码. 我试过这个并没有用: ????$inputData [‘title’] = s
我有这个:

<input name="title" type="text" class="inputMedium" value="' . $inputData['title'] . '" />

我想从用户输入中删除引号,以便如果有人输入如下内容:
“这是我的头衔”它不会搞砸我的代码.

我试过这个并没有用:
????$inputData [‘title’] = str_replace(‘“’,”,$_POST [‘title’]);

解决方法

如果我正确理解了这个问题,你想删除“来自$inputData [‘title’],这样你的HTML代码就不会搞砸了?

如果是这样,“正确”的解决方案不是删除双引号,而是在执行实际输出之前转义它们.

考虑到您正在生成HTML,您应该使用htmlspecialchars功能;这样,双引号(以及其他几个字符)将被编码到HTML实体,并且在注入HTML标记时不会造成任何麻烦.

例如 :

echo '<input name="title" type="text" class="inputMedium" value="'
   . htmlspecialchars($inputData['title'])
   . '" />';

注意:根据您的情况(特别是关于您可能正在使用的编码/字符集),您可能会将一些额外的参数传递给htmlspecialchars.

一般来说,无论您使用何种输出格式,都应始终将输出的数据作为输出转义.

例如 :

>如果要生成一些XML或HTML,则应使用htmlspecialchars
>如果要生成一些SQL,则应使用mysql_real_escape_string或等效项,具体取决于您正在使用的数据库类型

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读