这是我的代码:
<?php
require_once "connect.php";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$email = test_input($_POST["email"]);
if(!empty($email))
{
$insert = $db->prepare("INSERT INTO creations(email) VALUES (?)");
$insert->bind_param('s', $email);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<!DOCTYPE html>
<html>
<body>
<form method="post" action="">
<input type="text" name="email">
<input type="submit">
</form>
</body>
</html>
当我在电子邮件输入框中提交任何内容时,我收到一条错误信息:
致命错误:在第12行的/ home / xx / xx / xx / xx中的非对象上调用成员函数bind_param()。
我用几种不同的形式试过这个并得到了同样的错误。我已经对我的数据库和PHP代码中的所有内容进行了双重检查......
答案 0 :(得分:0)
如果您有任何问题,请告诉我。
// CODE
<?php
//PATH --- /var/www/html/connect.php
require_once($_SERVER['DOCUMENT_ROOT'] . "/connect.php");
if (isset($_POST["email"])){
$email = filter_data($_POST["email"]);
$stmt = $db->prepare("INSERT INTO creations(email) VALUES (?)");
$stmt->bind_param('s', $email);
$stmt->execute();
$stmt->close();
}
function filter_data($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<!DOCTYPE html>
<html>
<body>
<form method="post" action="">
<input type="text" name="email">
<input type="submit">
</form>
</body>
</html>