mysql重用自动增量id

时间:2015-04-21 13:12:16

标签: php mysql

我有以下情况,我简化了表格,以便在这里保持可读性。

表格结构(注意:idauto-increment

列: id,text,rid

根据表单的输入,将2行插入表格中。

INSERT INTO tablename (id,text,rid) 
VALUES (NULL, $usertext1, ??),(NULL, $usertext2, ??)

现在,我的问题出在哪里?

我需要第一个?和第二个?是 int ,两者都需要是第一次插入的自动增量 ID!我尝试了 LAST_INSERT_ID(),但它返回 0

我希望得到它的结果:

1 | abctext | 1

2 |拉拉| 1

3 | fajoif | 2

4 | oijgoi | 2

任何帮助都将受到高度赞赏:)

感谢。

1 个答案:

答案 0 :(得分:0)

你必须遵循这样的事情来完成它:

<?php 
$i=0;
$firstInsertId=0;
foreach($post as $value){// suppose each $post index contains the one complete post data
    $usertxt=$value['text'];
$sql="INSERT INTO tablename (id,text,rid) 
VALUES (NULL, $usertxt,$firstInsertId)";
$mysqli->query(sql);
if($i == 0)//flag to get first inserted Id
    $firstInsertId=$mysqli->insert_id;

  $i++;
}

$sql="update tablename set rid=$firstInsertId where id=$firstInsertId";
$mysqli->query(sql);