Php 未存储在数据库中的信息
我正在尝试制作一个表单,如果您单击submit按钮,您在文本字段上写的任何内容都将存储在数据库中。 我创建了一个名为create.php的页面,并写下以下代码:Php 未存储在数据库中的信息,php,html,mysql,database,Php,Html,Mysql,Database,我正在尝试制作一个表单,如果您单击submit按钮,您在文本字段上写的任何内容都将存储在数据库中。 我创建了一个名为create.php的页面,并写下以下代码: <html> <head> <title>adding info</title> </head> <body> <h1>insert information</h1> <form method=”post” action = ""&g
<html>
<head>
<title>adding info</title>
</head>
<body>
<h1>insert information</h1>
<form method=”post” action = "">
<p>name:
<input name=”name” type=”text”> </p>
<p>age:
<input name=”age” type=”text”> </p>
<br>
<p> email:
<input name = "email" type = "text"> </p>
<br>
<input type="submit" name="submit" value="submit">
</form>
</body>
</html>
<?php
function checkconnection()
{
global $link;
$databaseName = 'information';
$link = mysqli_connect('localhost', 'root', '', $databaseName);
return $link;
}
if(checkconnection())
{
echo 'i have gotten connected to the database' ;
}
else
{
echo 'error';
}
if(isset($_POST['submit']))
{
$name = $_POST['name'];
$age = $_POST['age'];
$email = $_POST['email'];
//connect to database
db();
global $link;
$query = "INSERT INTO info('name', 'age', 'email') VALUES ('$name', '$age' , '$email' )";
$insertInfo = mysqli_query($link, $query);
if($insertInfo)
{
echo "works";
}else
{
echo mysqli_error($link);
}
mysqli_close($link);
}
?>
添加信息
插入信息
姓名:
年龄:
电邮:
您定义了两次$link,也许这就是问题所在。
还有一个空间
$query = "INSERT INTO info('name', 'age', 'email') VALUES ('$name', '$age' , '$email' )";
在“$age”和之间,。
“作品”会被打印出来吗
别忘了绑定数据——这不是问题的解决方案,但您的代码还不安全。仔细检查HTML中的所有引号。你似乎有一些排版的引号而不是直接的引号
<form method=”post” action = "">
应该是
<form method="post" action="">
错误的引号可能会混淆浏览器,使其无法发送带有预期名称的请求变量。db()函数在哪里声明?“works”打印出来了吗?我在另一个PHP文件中有我的连接查询,并正在调用它。它不需要,所以我把它拆了,现在可以用了。谢谢你的建议。我会把它们绑起来