1.遇到的问题:
这几天学习sql注入时使用sqli_labs靶场时遇到了一些问题
在创建数据库的时候遇到Fatal error:Call to undefined function mysql_connect()
由于sqli是14年被写出来的,那个时候的PHP版本还是5之前
所以在使用新版php配置环境时有很多函数用不了
比如php7就舍弃了mysql_XXX()等函数,替换成了mysqli_xxx()。
所以使用他自带的sql-connections文件配置数据库时会不兼容,
2.解决办法:
解决办法也很简单,
只要把mysql_XXX()函数一个一个替换成对应的mysqli_XXX()函数即可,
修改后一些函数还要加上"$ con" 参数,例如:mysql_query($ sql) ---->mysqli_query($ con,$ sql)
,mysql_error()----->mysqli_error($con)等。
同理,每个关卡对应的php代码也要做相应的修改。
注:($ 符号和变量名sql,con之间没有空格,因为加上 $ 会变成另外一种字体, 另 一 种 字 体 另一种字体 另一种字体)
并且要注意把db-creds.inc文件里的$dbuser和 $dbuser 参数替换成自己对应的数据库用户名和密码。
还有一种比较简单的解决办法,就是把php版本调低,这样就避免了一个一个改。
要 是 解 决 了 的 话 麻 烦 点 一 个 免 费 的 赞 , 谢 谢 大 家 。 要是解决了的话麻烦点一个免费的赞,谢谢大家。 要是解决了的话麻烦点一个免费的赞,谢谢大家。