我是 PHP/MySQL 的初学者,试图通过表单将数据插入到表中,但我一直得到这个:连接成功错误:无法执行 INSERT INTO foo (firstname, lastname, landline, mobile) VALUES ('', '', ', ')。我有限的理解告诉我我连接成功,但没有任何东西进入桌面。检查表格证实了这一点。我正在尝试将数据从 PHP 7.1 WHMCS 服务器发送到运行 MySQL 5.1.73 的远程主机。我正在从 WHMCS 中提取一个用户 ID 并预先填充该字段,以便将其与表单数据的其余部分一起发送。我将该字段设置为“隐藏”和“文本”,但不走运。我什至将表单复制/粘贴到单独的 html 并尝试在根目录下运行所有内容。没有运气。我用这个例子作为我的指南。表格.tpl:根据 nextendweb 的 Roland 在 WordPress 支持论坛上发布的内容,我找到了解决我的问题的方法。他提交了一个错误报告:https://bugs.php.net/bug.php?id=76563他的建议是在我的情况下:$final .= ob_get_contents();ob_clean();代替:$final .= ob_get_clean();因为它没有像它应该的那样工作。
2 回答
四季花海
TA贡献1811条经验 获得超5个赞
在 action.php 中,您在设置变量之前使用变量。
// insert a row
$userid = $_POST["userid"];
$firstname = $_POST["firstname"];
$lastname = $_POST["lastname"];
$landline = $_POST["landline"];
$mobile = $_POST["mobile"];
// prepare sql and bind parameters
$stmt = $conn->prepare("INSERT INTO foo (id, firstname, lastname, landline, mobile) VALUES (:userid, :firstname, :lastname, :landline, :mobile)");
$stmt->bindParam(':userid', $userid);
$stmt->bindParam(':firstname', $firstname);
$stmt->bindParam(':lastname', $lastname);
$stmt->bindParam(':landline', $landline);
$stmt->bindParam(':mobile', $mobile);
$stmt->execute();
- 2 回答
- 0 关注
- 236 浏览
添加回答
举报
0/150
提交
取消