php - MySQL表在数据之前插入空记录

标签 php mysql

我是这方面的初学者。基本上我有一个设置了正确名称的表单,并且它正确地将数据发送到 MySQL 表,但每当我执行该表单时,它总是会插入额外的 4 个空白行/ID。

这是每次的结果:http://i.stack.imgur.com/bnx5D.png

我不确定代码或设置本身是否有问题,有人可以帮忙吗?

PHP 代码:

<?php
$email = $_POST['email'];
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$member_company = $_POST['member_company'];
$member_address1 = $_POST['member_address1'];
$member_address2 = $_POST['member_address2'];
$member_city = $_POST['member_city'];
$member_country = $_POST['member_country'];
$member_post_code = $_POST['member_post_code'];
$member_phone = $_POST['member_phone'];

mysql_connect ("localhost", "username", "password") or die ('Error: ' . mysql_error());
mysql_select_db ("database");

$query="INSERT INTO Orders (ID, email, first_name, last_name, member_company, member_address1, member_address2, member_city, member_country, member_post_code, member_phone) 
VALUES ('NULL', '".$email."', '".$first_name."', '".$last_name."', '".$member_company."', '".$member_address1."', '".$member_address2."', '".$member_city."', '".$member_country."', '".$member_post_code."', '".$member_phone."')";

mysql_query($query) or die ('Error updating database');

?>

最佳答案

问题是,每次执行请求时,都会将数据保存在表中。

您应该检查它是否是 POST 请求

if(isset($_POST){
    //Then the form has been submitted
}

这也会在每个 GET 请求上运行,这就是您得到这些空记录的原因。

关于php - MySQL表在数据之前插入空记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3696709/

相关文章:

php - 如何捕获PHP snmpwalk警告?

PHP选择查询未获取更新记录

MySQL 使用聚合函数进行选择

mysql - 在插入上执行触发器后,我收到错误代码 1136

php - HTML Canvas 中的图像不旋转

php - 使用录制的语音作为 twilio 创建调用响应

php - ssh2_auth_pubkey_file 获取错误回调返回错误(PHP 7.4,Ubuntu 20)

php - 如果字段为 true,则显示图像

javascript - 了解 Node 的错误处理的尝试/捕获和域

php - echo 变量,但仅当字段不为空时