首页 >数据库 >mysql教程 >尽管通过了调试检查点,为什么我的 mysqli 插入仍失败?

尽管通过了调试检查点,为什么我的 mysqli 插入仍失败?

Linda Hamilton
Linda Hamilton原创
2024-12-20 12:53:27366浏览

Why is My mysqli Insert Failing Despite Passing Debug Checkpoints?

使用 mysqli 插入数据:插入失败故障排除

此程序尝试使用 mysqli 扩展将数据插入 MySQL 数据库。然而,尽管成功通过了调试检查点,数据并未添加到表中。

问题在于变量绑定到准备好的语句的方式。在原始代码中,变量$username和$password使用bind_param()绑定两次。这是不正确的。正确的语法是在一次调用 bind_param() 时传递数据类型,后跟变量。

要解决此问题,可以按如下方式修改代码:

$stmt2->bind_param('ss', $username, $password);

或者,如果使用 PHP 5.6 或更高版本,可以使用扩展运算符将变量数组传递给 bind_param():

$data = ['username' => 'someUser', 'password' => 'secret'];
$stmt2->bind_param('ss', ...$data);

一次进行此更正后,INSERT 查询应该成功执行并将新行插入数据库。

以上是尽管通过了调试检查点,为什么我的 mysqli 插入仍失败?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn