我正在尝试使用此代码from this site,它在最初加载页面时将空字段插入数据库,并且在填写并提交表单的字段时,将另一批数据插入到数据库(MySQL)中.如何避免这种行为?
Firstname:
Lastname:
Age:
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
mysqli_close($con);
?>
解决方法:
Firstname:
Lastname:
Age:
if($_POST['submit']){
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";
mysqli_close($con);
}
?>
您必须检查($_ POST [‘submit’])变量是否设置了值.
你还需要在input type =“submit”html元素中添加一些值和名称
标签:html,php,mysql,forms
来源: https://codeday.me/bug/20190728/1563504.html