// MySQL PDO Prepared Statements (for impossible levels)
$db = new PDO('mysql:host=' . $_DVWA[ 'db_server' ].';dbname=' . $_DVWA[ 'db_database' ].';charset=utf8', $_DVWA[ 'db_user' ], $_DVWA[ 'db_password' ]);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

错误点如上 ↑

解决方法适用条件:

         以下2项配置正确。

         extension = php_pdo.dll

         extension = php_pdo_mysql.dll

错误原因:

在:

          DVWA\dvwa\includes\dvwaPage.inc.php

DVMA 默认的配置:

          $_DVWA[ 'default_security_level' ] = 'impossible';

我们需要的实验环境一般都修改为:

          $_DVWA[ 'default_security_level' ] = 'low';

注意这里有句注释:

          // MySQL PDO Prepared Statements (for impossible levels) 意思是为PDO的预设impossible等级的检查,因为实际用的是low 所以可以 咔嚓掉了

正确做法:

          

        // MySQL PDO Prepared Statements (for impossible levels)
//$db = new PDO('mysql:host=' . $_DVWA[ 'db_server' ].';dbname=' . $_DVWA[ 'db_database' ].';charset=utf8', $_DVWA[ 'db_user' ], $_DVWA[ 'db_password' ]);
//$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

关于PDO,百度百科解释如下:

              PDO一是PHP数据对象(PHP Data Object)的缩写。

              并不能使用PDO扩展本身执行任何数据库操作,必须使用一个database-specific PDO driver(针对特定数据库的PDO驱动)访问数据库服务器

              PDO并不提供数据库抽象,它并不会重写SQL或提供数据库本身缺失的功能,如果你需要这种功能,你需要使用一个更加成熟的抽象层。

重要的分界点:

              PDO需要PHP5核心OO特性的支持,所以它无法运行于之前的PHP版本。

              在Unix环境下PHP5.X以上版本中。

              在Lnux环境下PHP5.X以上版本中。

错误全码:

PHP Fatal error:  Uncaught exception 'PDOException' with message 'could not find driver' in C:\web\DVWA\dvwa\includes\dvwaPage.inc.php:469
Stack trace:
#0 C:\web\DVWA\dvwa\includes\dvwaPage.inc.php(469): PDO->__construct('mysql:host=loca...', 'root', '123123')
#1 C:\web\DVWA\login.php(8): dvwaDatabaseConnect()
#2 {main}
thrown in C:\web\DVWA\dvwa\includes\dvwaPage.inc.php on line 469

  

由于是第一次接触PHP,没有注意到注释,导致查了一晚上,嗯可以这么说晚上7点到夜里1点27,真是够了。希望后来的不要出现这种问题,或许只是因为我是在自学哈哈。

最新文章

  1. centos6.3安装MySQL 5.6(转)
  2. Endless Sky源码学习笔记-2
  3. dede使用方法---如何添加视频
  4. springMVC乱码问题-转
  5. [PE结构分析] 6.IMAGE_SECTION_HEADER
  6. 2016-03-15:关于VS中模块定义文件
  7. BZOJ2961: 共点圆
  8. .net 与 javascript脚本的几种交互方法
  9. windows设置多长时间后自动关机 分类: windows常用小技巧 2014-04-15 09:35 230人阅读 评论(0) 收藏
  10. [置顶] 浅谈大型web系统架构
  11. spring boot +mysql + mybatis + druid的整理(一)——单数据源
  12. 一位IT男的7年工作经验总结
  13. zabbix4.0监控Mysql数据库
  14. MySQL左连接时 返回的记录条数 比 左边表 数量多
  15. Python装饰器举例分析
  16. 蓝牙重启case之:hardware error
  17. CentOS7.3防火墙firewalld简单配置
  18. Ubuntu 18.04 搜狗输入法无法切换到英文输入
  19. sql server查询数据库的大小和各数据表的大小
  20. Mono For Android中完美使用百度地图SDK(v2.1.2&v2.1.3)(转)

热门文章

  1. Mesos, Marathon, Docker 平台部署记录
  2. OpenFileDiag 使用
  3. Qt 插件综合编程-基于插件的OpenStreetMap瓦片查看器client(5) 小结
  4. EJB之JPA
  5. VMWare无法共享文件夹(Win7宿主机\Ubuntu14.04客户机)
  6. 2016/2/19 position: fixed absolute relative z-index float 半透明效果
  7. Hihocoder #1479 : 三等分 树形DP
  8. 【Noip模拟By yxj】
  9. kendo datepicker汉化
  10. struts2 下载