【发布时间】:2016-06-26 09:27:28
【问题描述】:
我在下面写了我的 sql,它可以工作。由于我已将 details_id 设置为自动增量,因此我必须使用 Last_Insert_ID() 以便数据库使用自动增量来使用下一个 id。但是,我想将该值存储到 php 变量中。那可能吗?
$addquery = "INSERT INTO Particulars (Particulars_ID, Name, Identification_Number, Number, Nationality, Status, Remarks)
VALUES(LAST_INSERT_ID(),'$_POST[newname]', '$_POST[newic]','$_POST[newnumber]','$_POST[newnationality]','$_POST[newstatus]','$_POST[newremarks]')";
【问题讨论】:
-
你用什么mysql库?
-
小心在查询中直接使用 $_POST 变量。这会使您的网站容易受到 SQL 注入的攻击。
-
首先 db 本身也关心自动递增的列
$last_id = ladt_insert_id();你可以这样做,但它只能在程序执行之前使用。所以你的意思是store the auto increment value into a php variable? -
@Anant 是的,就像您的代码所建议的那样,我想将 id 设置为 a 变量。我想设置一个变量的原因是因为我有另一种形式,用户必须在其中插入他们的专业知识,并且我创建了一个数据库表 details_expertise,它在其中存储 details_id 和专业知识作为主键(复合键)。因此,如果我可以存储 details_id,然后我可以使用 id 将它们设置在复合材料中以用于下一个表单。
-
@u_mulder 嗯,我不确定你所说的 mysql lib 是什么意思。对不起这里的新手哈哈,但我正在使用 mysqli
标签: php sql auto-increment