关于php7.0下Sqli-labs搭建的小问题

由于前文中kali版本较新,默认安装的是php7.0(this is the problem)
PHP 5 的使用者可以使用 mysql extension,mysqli 和 PDO_MYSQL ,但是PHP 7移除了mysql extension,只剩下后面两种选择。
因此在Sqli-labs与数据库连接,查询的时候,会出现一些问题。
我们安装Sqli-labs的时候必需把相关数据库的函数改为mysqli的形式

一开始点击setup db的时候,会停留在页面
关于php7.0下Sqli-labs搭建的小问题

进入目录查看代码cd /var/www/html/sqli-labs/sql-connections
目录下方有7个文件
关于php7.0下Sqli-labs搭建的小问题

###步骤

###0x00 修改函数

mysql_xxx()全部修改为mysqli_xxx

使用sed+grep的结合

 sed -i "s/mysql_/mysqli_/g" `grep mysql_ -rl ./`  

###0x01 修改函数参数
由于mysql_error()函数下,连接是可选项,mysqli_error()下,connection变为必需项,因此需要把mysql_error()改为mysql_error($con)

sed -i s/"mysql_error()"/"mysqli_error(\$con)"/g `grep "mysql_error()" -rl ./`

php5.0下mysql_query($sql)即可查询
php7.0下mysql_query($con,$sql)

<?php 
// 假定数据库用户名:root,密码:123456,数据库:RUNOOB 
$con=mysqli_connect("localhost","root","123456","RUNOOB"); 
if (mysqli_connect_errno($con)) 
{ 
    echo "连接 MySQL 失败: " . mysqli_connect_error(); 
} 

// 执行查询
mysqli_query($con,"SELECT * FROM websites");
mysqli_query($con,"INSERT INTO websites (name, url, alexa, country)
VALUES ('百度','https://www.baidu.com/','4','CN')");

mysqli_close($con);
?>
mysqli下语法为:mysqli_query(connection,query,resultmode);
其中connection和query为必需项,this is what the problem is...

同样使用sed+grep命令把当前目录下所有文件的所有字符串替换

sed -i s/"mysql_query(\$sql)"/"mysqli_query(\$con,\$sql)"/g `grep "mysql_query(\$sql)" -rl ./`  ---一步到位

当时我是先把所有mysql_函数改成了mysqli_函数了,因此用下面的命令
sed -i s/"\$sql)"/"\$con,\$sql)"/g `grep "\$sql)" -rl ./`

这样php7.0对于数据库连接的影响基本可以解决。

原创文章,作者:JORZX,如若转载,请注明出处:http://www.wangzhanshi.com/n/7698.html

(0)
JORZX的头像JORZX
上一篇 2025年1月1日 16:41:32
下一篇 2025年1月1日 16:41:34

相关推荐

  • PHP7扩展开发之如何实现hello word项目

    本文实例讲述了PHP7扩展开发之hello word实现方法。分享给大家供大家参考,具体如下: 这里是以PHP7作为基础,讲解如何从零开始创建一个PHP扩展。本文主要讲解创建一个扩…

    php 2025年1月1日
  • Thinkphp5实现Redis数据缓存的基本步骤

    引言 在ThinkPHP 5中,你可以使用Redis作为数据缓存的解决方案。Redis是一个开源的内存数据结构存储系统,它可以用作数据库、缓存和消息中介。下面是在ThinkPHP …

    php 2024年12月17日
  • PHP7实现协程

    今天小编就为大家带来一篇有关PHP7实现协程的文章。小编觉得挺不错的,为此分享给大家做个参考。一起跟随小编过来看看吧。 什么是协程 先搞清楚,什么是协程。 你可能已经听过『进程』和…

    php 2025年1月1日
  • PHP7代码加密扩展有什么特点

    介绍 一个简洁、高性能、跨平台的 PHP7 代码加密扩展 特点 简单快速,经实测,几乎不影响性能 兼容 OPcache、Xdebug 等其他扩展 支持 Linux、macOS、Wi…

    php 2025年1月1日
  • PHP7中Reference内核的使用

    本文以PHP7中Reference内核为例,为大家分析PHP7中Reference内核的使用方法,阅读完整文相信大家对PHP7中Reference内核的使用有了一定的认识。 引用(…

    2025年1月1日
  • 下载安装php5的步骤

    1.从网站下载WINDOWS版本的php压缩包或安装包 (如果是安装包,可以直接安装,则以下操作基本上可以忽略。但为了更好的安全性,建议采用压缩包自己安装配置有关参数) 2. 将下…

    php 2025年1月2日
  • Windows下安装PHP5配置是怎样的

    PHP快速发展,PHP5的出现使它的功能更强大,下面教教大家关于PHP5配置。PHP5包括以下一些重要的特征:◆支持新的对象模型和许多新特点的Zend引擎。◆完全重新编写了XML支…

    php 2025年1月2日
  • PHP7和PHP5有哪些区别

    安装两个PHP版本 http://php.net/ 已经有最新PHP7的最新版本,大家可自行下载。 为了测试PHP5和PHP7(PHP6已被放弃,心疼1s)的性能,我在不同的目录安…

    php 2025年1月1日
  • PHP操作ZipArchive实现文件上传下载功能

    概述 在很多实际生产场景都需要批量上传、下载一些文件的处理,整理了使用PHP语言操作ZipArchive实践和实例,ZipArchive需要服务器上安装zlib库,php扩展中安装…

    php 2024年12月17日
  • windows上php7环境搭建的方法

    php有什么用 php是一个嵌套的缩写名称,是英文超级文本预处理语言,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因…

    2025年1月1日

发表回复

登录后才能评论