这是我正在尝试使用的一些 php 代码
<?php
$con=mysqli_connect(//);
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="INSERT INTO customers (fname, lname, address, suburb, postcode)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[address]','$_POST[suburb]','$_POST[postcode]')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
$sql="INSERT INTO orders (date, location, rego, bike_id)
VALUES
('$_POST[date]','$_POST[location]','$_POST[state]','$_POST[bid]')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "ID of last inserted record is: " . mysql_insert_id();
mysqli_close($con);
?>
我的问题是,我无法让 mysql_insert_id 工作。实际上,回声不显示任何内容。如果我尝试将它放入插入中,它会出现 0。我是一个完整的新手(第一次使用 php),所以我确定我做的事情显然是错误的。任何帮助都非常感谢。
这是我的表格: 客户:
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| cust_id | int(11) | NO | PRI | NULL | auto_increment |
| fname | varchar(20) | YES | | NULL | |
| lname | varchar(20) | YES | | NULL | |
| address | varchar(20) | YES | | NULL | |
| suburb | varchar(20) | YES | | NULL | |
| postcode | int(4) | YES | | NULL | |
+----------+-------------+------+-----+---------+----------------+
订单:
+----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+----------------+
| order_id | int(11) | NO | PRI | NULL | auto_increment |
| date | datetime | YES | | NULL | |
| location | varchar(65) | YES | | NULL | |
| rego | varchar(65) | YES | | NULL | |
| cust_id | int(11) | YES | MUL | NULL | |
| bike_id | int(11) | YES | MUL | NULL | |
+----------+-------------+------+-----+---------+----------------+
我之所以尝试这样做是因为当用户单击订单上的提交时,一些详细信息会转到每个表。我希望订单中的 cust_id 外键匹配客户的主键