如何将自动生成的表单编号分配给下一个必须填写的新表单

时间:2014-02-21 07:47:14

标签: php mysql

我有网站,其中我每天输入投诉表格,现在我们不分配表格编号到任何来自,数据库中的数字是所有的ID,它由数据库自动生成但我想显示此ID在提交之前的html上,

就像我点击我的网站上的新内容一样,它会显示所有已归档的空白除了表单没有提交它将被自动生成的no填充,并且当它提交时它将从no中取出它作为id如果它'那时候可以使用,

2 个答案:

答案 0 :(得分:1)

我建议使用UDF(用户定义函数)来实现这一点。

如果提交了由不同用户提供的具有相同编号的多个表单,则将预填充值提交到自动递增的值可能会导致异常。会有违反约束的行为。

相反,您可以依赖UDF来获取所需表字段上的序列 您可能需要:

  1. 定义一个表来存储自动递增的序列号。
  2. 定义函数nextval以生成下一个序列号记录 进入表格。
  3. 定义函数curval以获取当前序列号记录 从表中。
  4. 使用nextval功能填写表单中的“表单号” 字段。
  5. 在提交表单时,将相同的值插入表单表中 在数据库中。
  6. 此过程对并发提交是安全的。

    请参阅 类似的讨论和示例:

答案 1 :(得分:0)

尝试这个

$ids =mysqli_num_rows(mysqli_query($con,"SELECT MAX(id) from mytable"));//con is connection variable
 if(!empty($ids[0])) 
     $form_no = $ids[0]+1;
 else
     $form_no = 1;