前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用PHP的PDO_Mysql扩展有效避免sql注入

使用PHP的PDO_Mysql扩展有效避免sql注入

作者头像
luxixing
发布2019-05-29 17:43:32
9920
发布2019-05-29 17:43:32
举报
文章被收录于专栏:luxixingluxixing

首先,什么是sql注入? 用大白话说就是:当一个人在访问你的应用时,需要输入,他的输入是一些特殊的字符,你没有对输入进行过滤处理导致他的输入改变了你的sql语句的功能,实现他自己的目的,通过这种方式他可能能拿到很多权限,从而实施自己的攻击 以上的描述是很不严谨的,如果想深入了解sql注入,访问下面的链接:

http://www.php.net/manual/zh/security.database.sql-injection.php

本文的目的其实不是让大家知道什么是sql注入,而是希望大家从此可以忘掉sql注入。 在实践中,肯定有很多经验被总结出来,避免sql注入,在以前的mysql和mysqli扩展中,我们都需要手动去处理用户输入数据,来避免sql注入,这个时候你必须要非常了解sql注入,只有了解,才能针对具体的注入方式采取有效措施

PDO_Mysql的出现,可以让你从sql注入的斗争中抽身而去,你只需要记住,创建一个pdo_mysql链接实例的时候,设置合适的charset,就再也不必为sql注入揪心了。非常重要的就是字符集的设定一定要正确,否则还是有一些特殊字符能被构造用于sql注入

mysql:host=localhost;dbname=testdb;charset=utf8

执行sql语句之前prepare

恩,貌似就是这么简单,我们就告别了sql注入,感觉有点虚幻。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档