2014-02-21 63 views
0

我有我在其中填寫投訴表格的日常條目的網站,現在我們不會將表格編號分配給任何來自數據庫的數字是一個ID所有從它和它自動生成的數據庫,但我想顯示此ID在從提交之前的HTML,如何將自動生成的表格號碼分配到新的表格中,然後填寫新的表格

如果我點擊新從我的網站上它將顯示所有提交的空表格,會從沒有自動生成填寫,並在其提交它會從沒有把這個作爲ID,如果它會是可用的時候,

回答

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; 
+0

自動遞增值可能不匹配與'最大(ID)+ 1'。 –

+0

它唯一的打印1 – user3283373

1

我建議使用UDF(用戶定義函數)來實現這一點。

提交預填充值插入一個自增值可能會導致一個異常,如果多種形式,由不同的用戶,那麼與相同數目的提交。違反約束條件。

取而代之,您可以依賴UDF獲取所需表格字段上的序列。
您可能需要:

  1. 定義一個表來存儲序列號是自動遞增。
  2. 定義一個函數nextval來生成下一個序列號記錄 到表中。
  3. 定義一個函數curval從表中提取的當前序列號記錄 。
  4. 使用nextval功能來填補你的「表格編號」 場形狀。
  5. 在提交表單時,將相同的值插入數據庫中的表格表 。

此過程併發提交安全的。

參見類似的討論和示例於:

+0

你可以給這個代碼以便更好地理解 – user3283373

+0

@ user3283373:查看UDF上代碼的引用鏈接以及如何使用它。 –