我正在建立一个物业网站。
目前的情况是我有一个property.php,其中包含许多isset _get
来确定输出。属性页面查询属性表,具体取决于允许不同类型输入的字段。我允许上传图像表中的多个图像。这一切都很完美。
问题是由于这两个表,我需要插入两个查询(我已经将表和列以及字段定义为变量,因此我可以在不同的页面和站点中重用它们:))
$qry=mysql_query("INSERT INTO $table($col1,$col2,$col3,$col4,$col5,$col6,$col7,$col8,$col9,$col10,$col11,$col12,$col13,$col14)VALUES('$field','$field2','$field3','$field4','$field5','$field6','$field7','$field8','$field9','$field10','$field11','$field12','$field13','$field14')", $con);
if(!$qry)
{
die("Query Failed: ". mysql_error());
}
else
{
include 'upload.php';
upload.php执行图像的所有移动并运行另一个查询
$query="INSERT into images (`property`,`image`) VALUES(SELECT LAST_INSERT_ID(),'$file_name'); ";
我的问题是,属性字段永远不会填充last_insert_id()
并始终为0。
基本上我希望能够跟踪上传到提交期间插入的属性表的id的所有图像,我相信last_insert_id()
可以满足我的需求 - 但不能使用当前代码
答案 0 :(得分:0)
插入试用
时无需在LAST_INSERT_ID()
之前使用select
$query="INSERT into images (`property`,`image`) VALUES( LAST_INSERT_ID(),'$file_name'); ";
或您可以尝试使用mysql_insert_id()
$qry=mysql_query("INSERT INTO $table($col1,$col2,$col3,$col4,$col5,$col6,$col7,$col8,$col9,$col10,$col11,$col12,$col13,$col14)VALUES('$field','$field2','$field3','$field4','$field5','$field6','$field7','$field8','$field9','$field10','$field11','$field12','$field13','$field14')", $con);
if(!$qry) {
die("Query Failed: ". mysql_error());
}
else {
$last_id = mysql_insert_id();
include 'upload.php';
然后upload.php查询将
$query="INSERT into images (`property`,`image`) VALUES('$last_id','$file_name'); ";