0

请参见下图,它将允许我根据需要添加许多产品。首先,我从下拉列表中选择一个类别,然后通过 Ajax 在 Items 下拉列表中生成相关条目。通过单击“添加另一个产品”,我可以根据需要添加许多产品。

如果我完成了产品的选择,我将需要单击提交/订购按钮,然后通过 PHP(无 Ajax)验证字段,然后再添加到销售中。如果验证未通过 - 我需要重新填充所有选定的类别和条目(换句话说,再次创建产品字段) - 如何做到这一点?

注意:所有数据将存储在$_POST

在此处输入图像描述

4

2 回答 2

1

您的选择:

  • 使用 $_POST 数据生成包含用户创建的字段的 html
  • 存储 $_POST 数据(例如在会话中)并将用户重定向回原始表单,如果找到保存的数据,则必须包含代码以生成用户创建的字段。

首选第二个选项。

编辑:关于选项二的额外信息。

当验证失败时,将 $_POST 数据保存在 session: 中$_SESSION['stored post'] = $_POST;并重定向到原始表单(POST 源自的表单):header('Location: /url/of/the/original-form.html);

在生成订单表格的代码中添加以下内容:

if ( isset($_SESSION['stored post']) 
     && is_array($_SESSION['stored post']) 
     && count($_SESSION['stored post']) > 0 ) //check if there is POST stored
{
    //generate fields from data stored in $_SESSION['stored post'] here

    unset($_SESSION['stored post'];  //remove the stored data
}
于 2012-10-02T20:34:24.563 回答
0

对于输入框,就这么简单

<input name="fname" value="<?php if(isset($_POST['fname'])) echo $_POST['fname']' ?>">

对于选择框,您必须遍历选项以找出应选择的对象。

于 2012-10-02T20:21:41.797 回答