“mysqli_real_escape_string()”函数旨在转义字符串中的特殊字符,以防止SQL注入攻击。但是,它有一个特定的参数要求,可能会导致错误“mysqli_real_escape_string() Expects正好2个参数,给定1个。”
问题分析:
提供的代码检查 PHP 版本并尝试相应地使用“mysqli_real_escape_string()”。然而函数调用只包含要转义的字符串,缺少第一个必需参数:mysqli链接。
文档说明:
根据官方文档, “mysqli_real_escape_string()”需要两个参数:
解决方案:
要解决该错误,代码应在调用“mysqli_real_escape_string()”函数时包含这两个参数。这是更新版本:
if (phpversion() >= '4.3.0') { $string = mysqli_real_escape_string($link, $string); } else { $string = mysqli_escape_string($link, $string); }
通过确保提供 mysqli 链接作为第一个参数,“mysqli_real_escape_string()”函数将正确转义输入字符串并防止 SQL 注入漏洞。
以上是为什么 `mysqli_real_escape_string()` 抛出'期望正好 2 个参数,给定 1 个参数”?的详细内容。更多信息请关注PHP中文网其他相关文章!