基于先前输入的表格表

时间:2012-07-23 14:21:45

标签: php html sql forms

我刚开始使用PHP并遇到问题我似乎无法找到答案。

我必须创建一个跨多个页面的事件创建表单。在一个页面上,将有一个表格,其垂直将具有仅列出在前一页面上选择的票证类型的票证类型,并且根据前一页面还有一个“部分”列。然后,该表将允许用户输入价格,然后根据不同的部分分配给故障单类型。

我的问题是,是否可以单独使用html / PHP执行此操作?我正在使用POST方法在表单的页面之间移动,然后在结尾处将它全部添加到数据库中,但是我应该以不同的方式实现此目的吗?

我希望这个问题有道理,但我来自非语言岗位。

5 个答案:

答案 0 :(得分:0)

有几种方法可以采取:

  1. 按照描述使用POST方法。
  2. 使用会话变量跨页面存储数据。
  3. 使用jQuery / javascript在一个页面上隐藏/显示不同的表单(需要多个POST或在会话中存储数据)。

答案 1 :(得分:0)

你可以做什么(不一定应该,这是你自己的判断调用)将所有POST ed数据保存为会话变量。这可以帮助您清理代码混乱,否则您必须POST从所有表单到所有表单的所有数据,以便通过所有页面导航维护信息。

答案 2 :(得分:0)

只要第一页有一个带POST的表单方法,就可以完成。 以下是步骤:

  1. 在第一页上,用户将通过POST方法提交数据。
  2. 在第二页上,将数据保存在临时变量中:$ temp_var = $ _POST ['data'];
  3. 使用基于第一个的数据创建第二页。
  4. (提交时)使用旧数据将新数据保存到数据库中

答案 3 :(得分:0)

这对于sessions来说是个好例子!

在您的第一页上,您的表单可以通过POST提交,然后您可以将数据存储在用户的会话中:

session_start();
$_SESSION['form_submission'] = $_POST;

然后,在第2页(或任何其他页面)上,您可以使用以下方式访问它:

session_start();
$form_variable = $_SESSION['form_submission']['field_name'];

您可以更一般地存储/检索它们以使其更具可读性:

$_SESSION['field1'] = $_POST['field1'];
$field1 = $_SESSION['field1'];

答案 4 :(得分:0)

PHP和HTML可以很好地管理您所考虑的系统类型。

为了帮助您入门:

PHP使用会话来管理从一个页面到下一个页面的数据,从而创建如下过程:

  1. 用户填写第一张表格
  2. 向带有数据的Web服务器发送POST请求
  3. PHP脚本解释数据并在页面上创建新视图或重定向到另一个页面。
  4. 在您使用的每个页面顶部的PHP脚本中:

    session_start();
    

    您现在可以将数据保存到会话中:

    $_SESSION['mySessionVar'] = 'This is my session variable';
    

    每当您需要从会话中检索时,请确保已调用a)session_start()并且b)像这样检索它:

    $myVariable = $_SESSION['mySessionVar'];
    

    希望有所帮助。