我已经挣扎了大约一周,仍然没有任何结果。我已经阅读了以下问题:
- 无法在MySQL数据库中插入表单数据
- 与数据库的连接似乎成功,但INSERT INTO不发送数据
- PHP MySQL未插入数据库
- https://askubuntu.com/questions/435746/unable-to-send-data-to-mysql-database-it-is-not-taking-by-my-php-code
我尝试了以上问题答案中的所有建议。在查看了我的代码后,如果你仍然认为以上问题的解决方案相关,请告诉我。
我的代码-
connect.php-
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "practice_user";
// Create connection
$con = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($con->connect_error) {
echo "Connection failed: " . $con->connect_error;
}
else {
echo "Success";
}
//Insert data into database
$sql = "INSERT INTO simple_login (name,email) VALUES('{$mysqli->real_escape_string($_POST['name'])}','{$mysqli->real_escape_string($_POST['email'])}')";
$insert = $mysqli->query($sql);
if(!$insert)
{
echo $mysqli->error;
}
$mysqli->close();
register.html-
<html>
<head>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form action="connect.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit" value="Submit" name="submit">
</form>
</body>
</html>
和往常一样,我收到一条"成功"的连接消息。此外,它没有输出任何错误消息(如果我没有在给定的代码中适当地尝试输出插入错误,请在注释中说明)。
期待中的谢谢。
我会在这里发布这篇文章,我们都会犯错,所以不要担心!正如建议的那样,您的$mysqli函数是未定义的,您已经将您的mysqli实例存储为$con变量,因此您应该引用上面的任何mysqli函数。
检查http://php.net/manual/en/mysqli.query.php了解更多信息!