我阅读了很多关于常见 sql 注入的内容,因此对如何修复它们很感兴趣。在我只是习惯于
addslashes()(糟糕地)认为它会适合之前。然后我发现它mysql(i)_real_escape_string()比addslashes(). 从那时起我就开始使用mysqli_real_escape_string(),但最近我遇到了一些我还没有真正理解的东西。我在将数据发送到 mysql 和字符集时遇到了一些问题。所以,我再一次搜索,许多用户说SET NAMES UTF8这是让一切顺利的方法。但是后来我读到使用该查询mysqli_real_escape_string()无法正常工作。
所以毕竟我有点困惑。
转义sql语句的正确方法是什么?
有哪些可能的漏洞利用SET NAMES UTF8?
mysqli_set_charset()使连接以指定字符集进行通信的正确方法是什么?
使用mysqli_sey_charset()过程中mysql的内部变量是否发生了变化?
谢谢