POCO HTMLForm如何读取名称如invoice [items] [1]的输入表单元素

时间:2015-04-02 02:28:49

标签: html c++ poco-libraries

如果我的HTML表单输入是这样的:

<input name='invoice[items][1]' />
<input name='invoice[items][2]' />
<input name='invoice[payments][1]' />
<input name='invoice[payments][2]' />

在PHP中,我可以处理这种帖子或获取这样的数据:

$items = $_POST['invoice']['items'];
$payments=$_POST['invoice']['payments'];

如何在Poco Library的输入中处理这种类型?

1 个答案:

答案 0 :(得分:1)

Poco处理程序将如下所示:

void handleRequest(HTTPServerRequest& request, HTTPServerResponse& response)
{
  HTMLForm form(request, request.stream());
  std::string item1 = form["invoice[items][1]"];
  // ...
}

与PHP不同,C ++对HTML没有任何了解,因此它不会将名称数组解析为C ++结构,并且#34;开箱即用&#34 ;;当然,这可以通过自定义C ++解析器和一些HTMLForm逻辑轻松完成,但目前在Poco中不可用。