0

我是使用 PHP 的新手,遇到了一个我似乎找不到答案的问题。

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

我的问题是,是否可以单独使用 html/PHP 来做到这一点?我正在使用 POST 方法在表单的页面之间移动,然后在最后将其全部添加到数据库中,但是我应该以不同的方式来实现这一点吗?

我希望这个问题是有道理的,但我来自一个非行话的立场。

4

5 回答 5

0

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

于 2012-07-23T14:26:51.840 回答
0

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

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

这听起来像是一个很好的会话案例!

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

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

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

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

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

$_SESSION['field1'] = $_POST['field1'];
$field1 = $_SESSION['field1'];
于 2012-07-23T14:28:25.000 回答
0

PHP 和 HTML 可以很好地管理您心目中的系统。

为了让你开始:

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

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

在您使用的每个页面顶部的 PHP 脚本中:

session_start();

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

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

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

$myVariable = $_SESSION['mySessionVar'];

希望有帮助。

于 2012-07-23T14:30:58.537 回答
0

有几种方法可以采取:

  1. 按照您的描述使用 POST 方法。
  2. 使用会话变量跨页面存储数据。
  3. 使用 jQuery/javascript 在一个页面上隐藏/显示不同的表单(无需多次 POST 或在会话中存储数据)。
于 2012-07-23T14:25:54.600 回答