我是这方面的初学者。基本上我有一个设置了正确名称的表单,并且它正确地将数据发送到 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/