在POST上生成并保存序列号

时间:2013-01-26 19:44:06

标签: php mysql forms post

我有一个使用发布将信息发送到PHP页面的表单。

PHP页面;

  • 采取表单信息。
  • 重新排列。
  • 格式化。
  • 然后将其转换为最终发送给另一个的代码字符串 页面并使用该信息执行某些任务。

表单代码:

<form method="post" action="_php/buildMyPNR.php" name="GuestInfo" 
      onSubmit="return validateFormMethod1();">

<input type="text" name="AccountNumber" id="BID" 
       onkeypress="return isNumberKey(event)" size ="16"/>

<input type="hidden" name="requestID" id="RID" value="" />

..... bunch of other fields

<input type="submit" name="loadURL" id="submit" value="Submit" 
       onsubmit="return ValidateFields();" />

</form>

我需要做的是

  • 每次使用页面时生成一个序号。
  • 将该号码与邮寄请求一起传递(排序类似于序列号 对于请求),另一种形式说 _php / buildMyPNR.php
  • _php / buildMyPNR.php 加载时,保存值 数据库或类似内容的 AccountNumber requestID
  • 最终会转到 _php / usageSummary.php ,用户可以点击 一个按钮,用于返回与 AccountNumbers 列表配对的按钮 为请求生成的 requestID
  • 可能以excel电子表格格式下载列表,但确实如此 并非绝对必要。

实现这一目标的最佳方法是什么?

主要是我需要帮助来生成 requestID 。我需要它们是顺序的所以我假设我需要从我的数据库中的数字开始,如00001,从我的表单中查询该数字,将1添加到返回的值,然后将新值与 AccountNumber一起保存按下提交时。

我没有数据库的经验,我们将非常感谢任何指导。

1 个答案:

答案 0 :(得分:1)

理想情况下,我们会看到您已经尝试过的一些架构和代码示例......

但是,您可以在数据库表中使用自动增量字段,这将为您完成ID递增。

enter image description here

如果您正在使用mysqli进行mysql数据库交互(或许应该如此),那么您可以使用;

来检索此自动编号
$PassedRequestID = $mysqli->insert_id

然后将其传递到下一页。

然后,您需要使用类似(伪代码);

的内容来查询数据库
SELECT Accounts.*, Requests.*
INNER JOIN Requests ON Requests.AccountID = Accounts.AccountID
WHERE Requests.RequestID = $PassedRequestID

要导出到Excel,如果您使用Google搜索 PHP导出CSV ,那么会有很多示例可供选择。但是,作为一个例子;

http://code.stephenmorley.org/php/creating-downloadable-csv-files/