平台: PHP和mySQL

出于实验目的,我在自己的网站上尝试了很少的XSS注入。考虑这种情况,我可以输入表单textarea。由于这是一个文本区域,因此我可以输入文本和各种(英文)字符。这是我的观察结果:

一个)。如果仅在将数据插入数据库之前才应用strip_tags和mysql_real_escape_string并且不对输入使用htmlentities,

则查询将中断 ,由于异常终止,我会遇到一个错误,该错误显示了我的表结构。

B)。如果我在将数据插入数据库之前就在输入上应用strip_tags,mysql_real_escape_string和htmlentities,

则查询不会中断, 并且能够将textarea的数据成功插入数据库。

因此,我的理解是,必须不惜一切代价使用htmentity,但不确定何时确切使用它。考虑到以上几点,我想知道:

何时确切使用htmlentities?当我试图从数据库中显示数据时,是否应该在将数据插入数据库之前使用它,或者以某种方式将数据获取到数据库中,然后应用htmlentities?

如果我遵循上面B点中所述的方法(我认为这是我看来最明显,最有效的解决方案),当我试图显示数据库中的数据时,是否仍需要应用htmlentities?如果是这样,为什么?如果没有,为什么不呢?我问这个问题是因为在我浏览了以下文章后,这真的使我感到困惑:http : //shiflett.org/blog/2005/dec/google-xss-example

然后是另一个名为PHP的函数: html_entity_decode 。当在输入上应用htmlentities时,是否可以使用它来显示来自DB的数据(按照B点所示的步骤进行操作)?我应该从哪一个中选择html_entity_decode和htmlentities以及何时使用?

预览页:

我认为在此处添加一些特定情况的更多详细信息可能会有所帮助。考虑有一个“预览”页面。现在,当我从文本区域提交输入时,“预览”页面将接收输入并将其显示为html,同时,隐藏的输入将收集此输入。当单击“预览”按钮上的“提交”按钮时,隐藏输入中的数据将POST到新页面,并且该页面将隐藏输入中包含的数据插入到数据库中。如果在初次提交表单时不应用htmlentities(但仅应用strip_tags和mysql_real_escape_string),并且在文本区域中存在恶意输入,则隐藏的输入将被破坏,并且隐藏输入的最后几个字符将被视为

"

/>在页面上,这是不可取的。因此,请记住这一点,我需要做一些事情以在“预览”页面上适当地保留隐藏输入的完整性,并在隐藏输入中收集数据,以免破坏数据。我该怎么办?抱歉延迟发布此信息。

先感谢您。

htmlentities在mysql_PHP和mySQL:何时确切使用htmlentities?相关推荐

  1. php中mysql_PHP中MySQL操作

    本次使用的demo是MySQL的示例数据库employees, PHP中的demo代码可以在 这里使用的是 一.连接数据库 1.1.连接 打开一个到 MySQL 服务器的连接.有面向对象风格和过程化风 ...

  2. 路由 php mysql_Php 连接 MySQL 的三种方式

    PHP与MySQL的连接有三种API接口 分别是:PHP的MySQL扩展 .PHP的mysqli扩展 .PHP数据对象(PDO) ,下面针对以上三种连接方式做下总结,以备在不同场景下选出最优方案. P ...

  3. php 插入 mysql_php插入mysql数据返回id的方法

    如下所示: $dbh = mysql_connect('localhost','root','root'); mysql_select_db('pkbk'); $query = "inser ...

  4. php把中文写入mysql_PHP向mysql插入中文乱码问题,php文件内容写入数据库!

    再用php向mysql中插入中文时常常遇到乱码问题!下面给出我的解决办法,希望能解决你的问题 我的是在apmserv的环境下! 数据库操作:CREATE TABLE `v` ( `id` int(6) ...

  5. php cli mysql_php – 为什么mysql CLI可以连接,但不能连接WordPress?

    我刚刚使用MariaDB在Debian 9.1上遇到了这个问题,但这在Oracle MysqL中应该是相同的.我可以从命令行轻松登录,但PHP无法访问数据库. 我花了几分钟才弄明白,但我记得当时我曾经 ...

  6. had oop 链接mysql_php – 将MySQL连接查询与OOP和对象相关联的最佳实践方法

    我正在开发一个 PHP Web应用程序,用户可以创建到目的地的旅行,并邀请其他用户参加这些旅行. 我有针对Destinations,Trips和Users的MySql表,以及一个名为Invites的表 ...

  7. php 扩展 mysql_PHP链接MySQL的常用扩展函数

    一.PHP连接数据库及基本操作 MySQL采用的是'客户机/服务器'架构.使用PHP安装的MySQL扩展函数,和直接使用客户端软件区访问MySQL数据库服务器,原理一样,都需要向MySQL管理系统发送 ...

  8. php数据存储mysql_php – 在MySQL中存储路线数据的最佳方式

    我正在开发一个应用程序,它要求我存储一些位置的方向,下面是我试图存储的数据的示例: 方向1 从西部:乘528 East(Beechline),经过机场出口,然后从13号出口驶入Narcoossee R ...

  9. sqlrelay mysql_php+sqlrelay+mysql实现连接池及读写负载均衡

    php+sqlrelay+mysql实现连接池及读写负载均衡 上一篇 / 下一篇  2008-04-02 18:25:19 / 个人分类:MySQL 作者:ziqiu sqlrelay.jpg(20. ...

最新文章

  1. 苹果、微软等巨头107道机器学习面试题
  2. 对象过滤某个属性 循环 php_37道PHP面试题(附答案)
  3. 计算机二级c语言公共基础知识(免费的) 百度云,计算机二级c语言公共基础知识(免费的).doc...
  4. Java基础入门笔记-包装类
  5. C#学习成果 质数判断
  6. linux c99 可变长数组,C中不支持可变长度数组C99(Variable length arrays C99 not supported in C)...
  7. c语言自动按次序创建文件,读取文件建立顺序表实现增,删,查,取(C语言)...
  8. JVM 对象引用标记 与 内存回收算法
  9. Android中如何Hook住JNI方法
  10. java编程汽水_[原创]JAVA解决喝汽水问题
  11. 算法时间复杂度符号分析(O、o、Ω、ω、Θ)
  12. 一味顺从的人没有好果子吃
  13. aimesh r6400 开_r6900+r6300v2 aimesh 连接成功!点滴分享
  14. ONEDNS配置2:centos7DNS服务器VA转发器配置
  15. SDH同步数字系列(Synchronous Digital Hierarchy,SDH)--SONET同步光网络(Synchronous Optical NETwork,SONET)
  16. 启动kafka2.8报afka.common.KafkaException: No `meta.properties` found in /tmp/kraft-combined-logs
  17. Windows系统cmd命令+实用工具
  18. MySQL函数关键字(五)子查询 ANY/SOME/ALL/IN/EXISTS/USING
  19. [引擎搭建记录] 遮罩加速的软光栅遮挡剔除
  20. 深度分析这一年「AI大咖」,最重要的跳槽原因是……

热门文章

  1. C#LeetCode刷题之#31-下一个排列(Next Permutation)
  2. 《高性能mysql》读书笔记一
  3. javascript语法_JavaScript传播语法简介
  4. 在不如意的世界里全力以赴_我如何在“外展之旅”中全力以赴
  5. amazon alexa_亚马逊使向自定义Alexa Skills添加声音变得更加容易
  6. binlog关闭事务记录_【MySQL】binlog_format以及binlog事务记录分析
  7. dell加装固态硬盘_技术丨如何进行笔记本硬盘拆装?
  8. 领导给了一堆无序杂乱的数据,我写了个Python自动化脚本
  9. Python爬虫提取神器,正则表达式(re模块),全程干货!
  10. 点击率预测的贝叶斯平滑